首页 > 解决方案 > 图片框在 vb.net 中不显示 .gif 格式的图像动画

问题描述

我已经开发了一个MenuForm 一个ParentForm 和LoadingForm。当MenuForm 按钮单击进入ParentForm 如果有繁重的进程,它会在进程开始前显示LoadingForm 并在进程结束时关闭。

除了 .gif 格式加载图像动画不起作用之外,我做了所有事情并且工作正常。我不想使用任何图像动画师类。现在我的问题是如何在图片框中加载这个带有动​​画的 .gif 格式图像?

代码片段如下;

我相信如果我得到答案,这个代码片段可以帮助许多开发人员使用 winform 制作简单的加载屏幕,而不是使用线程和异步方式。

' MENU FORM 

Public Class frmMenu
  Public Property FromForm As Form
    Private Sub btnMdr2_Click(sender As Object, e As EventArgs) Handles _
       btnMdr2.Click

         FromForm = Me
         Dim mdr2Form As New ParentForm
         mdr2Form.Show()

    End Sub
End Class

'PARENT FORM

Public Class ParentForm
    Public Property FromForm As Form
  Public Sub MachineDailyReportForm_Load(sender As Object, e As EventArgs)_ 
    Handles MyBase.Load

       FromForm = Me
      'Show loading screen 
       Dim loadingForm As New LoadingForm(FromForm)
       loadingForm.Show()

       'Use For loop to delay the process(add data in list) and to see 
       'loading screen 
         For i As Long = 0 To 1000000000
           If i = 1000000000 Then
              Exit For
           Else
              Continue For
           End If
         Next

        Dim list As New List(Of String)
        machineList.Items.Add("Wheel")
        machineList.Items.Add("Range")
        machineList.Items.Add("Gear")

       'Close loading screen 
       loadingForm.CloseLoadingDialog()
   End Sub
End Class

'LOADING FORM

Public Class LoadingForm
   Public Property FromForm As Form
   Public Sub New(ByVal FromForm As Form)
      InitializeComponent()
      Me.FromForm = FromForm
   End Sub
   Public Sub SplashScreen_Load() Handles MyBase.Load
       PictureBoxGif.Image = My.Resources.loading
       Show()
       Refresh()
   End Sub
   Public Sub CloseLoadingDialog()
      Me.Close()
      Me.Dispose()
   End Sub
End Class

在此处输入图像描述

我正在使用这个 loading.gif 图像,它显示在图片框中但没有旋转。

标签: vb.net

解决方案


推荐阅读