如何在vb.net窗體上以48x48分辨率顯示圖標? 我看着使用imagelist,但我不知道如何顯示使用代碼添加到列表中的圖像以及如何在窗體上指定它的座標。 我做了一些谷歌搜索,但沒有任何例子真正顯示我需要知道的。在vb.net窗體上顯示圖標
3
A
回答
7
ImageList中是不理想的,當你有圖像格式支持阿爾法透明度(在至少它曾經是這種情況;最近我沒有使用它們),所以你可能更好f從磁盤或資源中的文件加載圖標。如果你從磁盤加載它,你可以使用這種方法:
' Function for loading the icon from disk in 48x48 size '
Private Function LoadIconFromFile(ByVal fileName As String) As Icon
Return New Icon(fileName, New Size(48, 48))
End Function
' code for loading the icon into a PictureBox '
Dim theIcon As Icon = LoadIconFromFile("C:\path\file.ico")
pbIcon.Image = theIcon.ToBitmap()
theIcon.Dispose()
' code for drawing the icon on the form, at x=20, y=20 '
Dim g As Graphics = Me.CreateGraphics()
Dim theIcon As Icon = LoadIconFromFile("C:\path\file.ico")
g.DrawIcon(theIcon, 20, 20)
g.Dispose()
theIcon.Dispose()
更新:如果你不是想有圖標作爲您的程序集嵌入的資源,你可以改變LoadIconFromFile來方法,讓它看起來像這樣代替:
Private Function LoadIconFromFile(ByVal fileName As String) As Icon
Dim result As Icon
Dim assembly As System.Reflection.Assembly = Me.GetType().Assembly
Dim stream As System.IO.Stream = assembly.GetManifestResourceStream((assembly.GetName().Name & ".file.ico"))
result = New Icon(stream, New Size(48, 48))
stream.Dispose()
Return result
End Function
2
你想要一個picturebox控件將圖像放在窗體上。
然後,您可以將Image屬性設置爲您希望顯示的圖像,即來自磁盤上的文件,圖像列表或資源文件的圖像。
假設你有一個圖片稱爲PCT:
pct.Image = Image.FromFile("c:\Image_Name.jpg") 'file on disk
或
pct.Image = My.Resources.Image_Name 'project resources
或
pct.Image = imagelist.image(0) 'imagelist
0
Me.Icon = Icon.FromHandle(DirectCast(ImgLs_ICONS.Images(0), Bitmap).GetHicon())
+2
歡迎使用堆棧溢出。請詳細說明您的答案 – 2012-11-20 21:09:57
0
您可以使用一個Label控件做同樣的事情。我用一個在picturebox控件中的圖像上繪製一個點。這可能比使用PictureBox的開銷少。
Dim label As Label = New Label()
label.Size = My.Resources.DefectDot.Size
label.Image = My.Resources.DefectDot ' Already an image so don't need ToBitmap
label.Location = New Point(40, 40)
DefectPictureBox.Controls.Add(label)
使用OnPaint方法可能是這樣做的最好方法。
Private Sub DefectPictureBox_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles DefectPictureBox.Paint
e.Graphics.DrawIcon(My.Resources.MyDot, 20, 20)
End Sub
相關問題
- 1. 在java窗體上顯示圖標
- 2. VB.net窗體恢復不顯示窗體
- 3. 如何在VB.NET中的窗體上顯示圖片?
- 4. 在VB.net中的窗體中顯示PDF
- 5. 在窗體上顯示pdf?
- 6. 在窗體上顯示RadDesktopAlert
- 7. 在windows窗體中的鼠標懸停上顯示圖像?
- 8. Windows窗體,在動態生成的位圖上顯示指標
- 9. 如何使用vb.net在窗體窗體上旋轉圖片框
- 10. 窗體標籤不顯示
- 11. 頂部X軸標籤不顯示窗體窗體圖表
- 12. 如何在C#窗體窗體對話框中顯示標準錯誤圖標?
- 13. 在窗體上設置光標不會顯示在控件上
- 14. 從主窗體繼承圖標到vb.net中的子窗體
- 15. 如何在任務欄上顯示圖標但不在窗體本身上?
- 16. 彈出窗口來顯示圖像vb.net
- 17. 如何使下拉顯示工具欄窗體(VB.net)上的圖像和文字?
- 18. 在VB 2010窗體上顯示輸出
- 19. 在窗體上顯示類內容
- 20. 在窗體上刷新配置顯示
- 21. 在模態窗體上顯示消息
- 22. MonthCalendar不顯示在窗體上C#
- 23. 如何在窗體上顯示req.validationError
- 24. 在Windows窗體上顯示數據
- 25. 窗體顯示
- 26. Windows窗體 - 在gridview中顯示圖像
- 27. 從C窗體窗口中的本地資源顯示圖標#
- 28. 如何在窗體標題和ALT-TAB窗口中顯示不同的圖標?
- 29. 窗口圖標不顯示
- 30. 子窗體的條件格式不顯示在父窗體上
謝謝,你的圖片盒方法工作完美。 – MaQleod 2009-05-27 22:24:18