主题:[讨论]如何除去窗体左上角的图标
zhang5382
[专家分:170] 发布于 2009-05-01 08:32:00
在窗体上不想显示左上角的图标,用何方法实现?
回复列表 (共10个回复)
沙发
天天学习 [专家分:4570] 发布于 2009-05-01 08:58:00
窗体的borderStyle设置为0,4,5都可以
板凳
snyga [专家分:1480] 发布于 2009-05-01 17:28:00
Option Explicit
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_SETICON = &H80
Private Const ICON_SMALL = 0
Private Const ICON_BIG = 1
Private Declare Function CreateIcon Lib "user32" (ByVal hInstance As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal nPlanes As Byte, ByVal nBitsPixel As Byte, lpANDbits As Byte, lpXORbits As Byte) As Long
Private Declare Function DestroyIcon Lib "user32" (ByVal hIcon As Long) As Long
Dim hIcon As Long
Private Sub Form_Load()
'创建一个空图标
hIcon = CreateIcon(App.hInstance, 0, 0, 0, 0, ByVal 0&, ByVal 0&)
'修改窗体的图标
SendMessage Me.hwnd, WM_SETICON, ICON_SMALL, ByVal hIcon
'SendMessage Me.hwnd, WM_SETICON, ICON_BIG, ByVal hIcon
End Sub
Private Sub Form_Unload(Cancel As Integer)
'销毁我们创建的空图标
DestroyIcon hIcon
End Sub
3 楼
zhang5382 [专家分:170] 发布于 2009-05-02 23:43:00
我之所以提这个问题,是因为在程序中同时使用窗体和msgbox给出一些资料或提示,窗体上有图标,而用msgbox给的提示没有图标,风格不一致,采用1楼的办法可以实现,但是风格仍有明显差异。2楼的暂时还看不懂,慢慢琢磨吧。
4 楼
oO羽姿Oo [专家分:600] 发布于 2009-05-07 12:15:00
那个在VB6里有属性的。
在窗体属性中把CONTROLBOX属性设为FALSE。那个图标就没了。
那个图标是系统菜单。你点一下。会出来一个最大最小化的菜单。
把 CONTROLBOX 设为 FALSE 后。图标没有了。菜单也没有了。
5 楼
天天学习 [专家分:4570] 发布于 2009-05-07 13:37:00
[quote]在窗体属性中把CONTROLBOX属性设为FALSE。那个图标就没了[/quote]
但同时右上角上关闭,最小化,最大化按钮也没了
6 楼
xiaochuanyuan [专家分:260] 发布于 2009-05-22 16:12:00
情况3我没试过,仅供参考.
情况1:bobrderStyle=0,4,5---不讨论,估计这几种样子你不会用
情况2:bobrderStyle=3-----在form_load事件中,添加me.icon=nothing
情况3:bobrderStyle=1,2-----做一个透明图标存成ico文件,然后将将窗体的图标设成该图标
7 楼
天天学习 [专家分:4570] 发布于 2009-05-22 16:56:00
[quote]情况2:bobrderStyle=3-----在form_load事件中,添加me.icon=nothing[/quote]
好,学习了.
8 楼
zhang5382 [专家分:170] 发布于 2009-06-01 19:05:00
[quote]情况3我没试过,仅供参考.
情况1:bobrderStyle=0,4,5---不讨论,估计这几种样子你不会用
情况2:bobrderStyle=3-----在form_load事件中,添加me.icon=nothing
情况3:bobrderStyle=1,2-----做一个透明图标存成ico文件,然后将将窗体的图标设成该图标
[/quote]
试过情况2,还是有一个默认的图标,我想一点都不要,这样和msgbox的风格非常一致,
情况3,我还不会做透明图标。
9 楼
xiaochuanyuan [专家分:260] 发布于 2009-06-08 14:43:00
不知道你在情况2是怎么试的,反正我的vb6+winxp是没有的
10 楼
zhang5382 [专家分:170] 发布于 2009-06-08 20:40:00
将bobrderStyle设为3后就行了。
我来回复