如何解决vb.net 在等待进程时显示动画 Gif
我正在运行将数据表导出到 Excel 的代码。由于这需要一段时间,我不想混淆用户并显示图像
Dim _excel As New Microsoft.Office.Interop.Excel.Application
Dim wBook As Microsoft.Office.Interop.Excel.Workbook
Dim wSheet As Microsoft.Office.Interop.Excel.Worksheet
PictureLoading.Visible = True
wBook = _excel.Workbooks.Add()
wSheet = wBook.ActiveSheet()
Dim dt As System.Data.DataTable = GetTableForCompleteArchive()
Dim dc As System.Data.DataColumn
Dim dr As System.Data.DaTarow
Dim colIndex As Integer = 0
Dim rowIndex As Integer = 0
PictureLoading.Refresh()
For Each dc In dt.Columns
colIndex += 1
_excel.Cells(1,colIndex) = dc.ColumnName
Next
PictureLoading.Refresh()
For Each dr In dt.Rows
rowIndex += 1
colIndex = 0
For Each dc In dt.Columns
colIndex += 1
_excel.Cells(rowIndex + 1,colIndex) = dr(dc.ColumnName)
Next
Next
PictureLoading.Refresh()
wSheet.Columns.AutoFit()
Dim strFileName As String = Application.StartupPath & "\Export.xlsx" '"C:\datatable.xlsx"
If System.IO.File.Exists(strFileName) Then
System.IO.File.Delete(strFileName)
End If
PictureLoading.Refresh()
wBook.SaveAs(strFileName)
wBook.Close()
_excel.Quit()
PictureLoading.Visible = False
问题是图像冻结并且没有动画。有没有办法在等待过程时使图像动画?
解决方法
function wpdocs_replaceALT( $content ) {
if ( is_single() && in_the_loop() && is_main_query() ) {
libxml_use_internal_errors( true );
$post = new DOMDocument();
$post->loadHTML( $content );
$images = $post->getElementsByTagName( 'img' );
foreach ( $images as $image ) {
$view_photog = '';
$src = $image->getAttribute( 'src' );
$image_id = attachment_url_to_postid( $src );
$media = get_post( $image_id );
$caption = $media->post_excerpt;
$photographer_relationship = get_field( 'photographer',$image_id );
$photographer = ( is_array( $photographer_relationship ) && !empty( $photographer_relationship ) ) ? array_shift( $photographer_relationship ) : null;
if ( !empty( $photographer ) ) {
$link_to_photographer = get_permalink( $photographer );
$view_photog = '<a class="learn-more-photog-link" target="_blank" href="' . $link_to_photographer . '">View Photographer</a>';
}
$link_text = '' . $caption . '' . $view_photog . '';
if ( empty( $image->getAttribute( 'title' ) ) ) {
$image->setAttribute( 'title',$link_text );
}
}
$content = $post->saveHTML();
return $content;
}
}
add_filter( 'the_content','wpdocs_replaceALT' );
我的函数是从 Private Sub TotalArchiveToolStripMenuItem_Click(sender As Object,e As EventArgs) Handles EXCELToolStripMenuItem.Click
BackgroundWorker1.WorkerSupportsCancellation = True
BackgroundWorker1.WorkerReportsProgress = True
'call this method to start your asynchronous Task.
BackgroundWorker1.RunWorkerAsync()
'display the loading image
PictureLoading.Visible = True
End Sub
Private Sub BackgroundWorker1_DoWork(sender As Object,e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
'call the function to export to Excel
Export2Excel()
If BackgroundWorker1.CancellationPending Then
e.Cancel = True
End If
End Sub
Private Sub BackgroundWorker1_RunWorkerCompleted(sender As Object,e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles BackgroundWorker1.RunWorkerCompleted
'' This event is fired when your BackgroundWorker exits.
'' It may have exitted Normally after completing its task,'' or because of Cancellation,or due to any Error.
PictureLoading.Visible = False
End Sub
内部运行的。当我点击 Backgroundworker_DoWork
时图像设置为可见,完成 TotalArchiveToolStripMenuItem
后设置为不可见。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。