[Vb.net] 如何在表單顯示動態的圖示Icon(一)

有時我們會想用動態圖做為表單的 Icon,也可在表單最小化時動態呈現在最下方的工作列。
最初想法簡單的以為用一個 Gif 動態圖取代 Icon 的 image 就成了,可是在 icon 中找不到和 Image 或 bitmap 相關的直接屬性可以設定。
後來找到了(MSDN 的說明)後用以下方法達成了目的...

有時我們會想用動態圖做為表單的 Icon,也可在表單最小化時動態呈現在最下方的工作列。

最初想法簡單的以為用一個 Gif 動態圖取代 Icon 的 image 就成了,可是在 icon 中找不到和 Image 或 bitmap 相關的直接屬性可以設定。

後來找到了(MSDN 的說明)後用以下方法達成了目的:

 

  1. 先取得一張動態 GIF 圖,把它放到 PictureBox 上面。
  2. 要用 PictureBox 的 Image 屬性,若用 BackgroundImage 它不會動。
  3. 用一個 Timer 定時取回變化中的圖資。
  4. 用 Me.Icon = Icon.FromHandle(CType(PictureBox1.Image, Bitmap).GetHicon) 即可做到了。

 

程式碼:

Public Class Form3

    Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Timer1.Interval = 200
        Timer1.Enabled = True
    End Sub

    '---使用 Timer 定時擷取變化中的圖像轉成 Icon---
    Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
        Me.Icon = Icon.FromHandle(CType(PictureBox1.Image, Bitmap).GetHicon)
        Me.Icon.Dispose()
    End Sub

End Class

 

 

image

會動的 icon…….

ku3