防止形式最小化 [英] Prevent form minimize

查看:87
本文介绍了防止形式最小化的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述




我正在创建自己的补充工具栏(就像在Vista中一样)。


在我的XP中快速菜单,我有一个名为显示桌面的按钮。当我点击

时,所有表格都被最小化。


由于我不希望我的SideBar被最小化,我该如何防止这种情况? />

谢谢!


MOJO

Hi,

I''m creating my own Sidebar (like in Vista).

In my XP''s quick menu, I have a button called "Show Desktop". When I click
it all forms are minimized.

Since I don''t want my SideBar to be minimized, how do I prevent this?

Thanks!

M O J O

推荐答案

扔进以下:


Private Const WM_SYSCOMMAND As Int32 =& H112

Private Const SC_MINIMIZE As Int32 =& HF020


受保护的覆盖子WndProc(ByRef m As Message)

如果m.Msg = WM_SYSCOMMAND那么

如果m.WParam.ToInt32()= SC_MINIMIZE则退出Sub

结束如果

MyBase.WndProc(m)

结束子


谢谢,


Seth Rowe

MOJO写道:
Throw in the following:

Private Const WM_SYSCOMMAND As Int32 = &H112
Private Const SC_MINIMIZE As Int32 = &HF020

Protected Overrides Sub WndProc(ByRef m As Message)
If m.Msg = WM_SYSCOMMAND Then
if m.WParam.ToInt32() = SC_MINIMIZE then Exit Sub
End If
MyBase.WndProc(m)
End Sub

Thanks,

Seth Rowe
M O J O wrote:




我正在创建自己的补充工具栏(就像在Vista中一样)。


在我的XP的快捷菜单中,我有一个名为显示桌面的按钮。当我点击

时,所有表格都被最小化。


由于我不希望我的SideBar被最小化,我该如何防止这种情况? />

谢谢!


MOJO
Hi,

I''m creating my own Sidebar (like in Vista).

In my XP''s quick menu, I have a button called "Show Desktop". When I click
it all forms are minimized.

Since I don''t want my SideBar to be minimized, how do I prevent this?

Thanks!

M O J O


哦顺便说一下,这里来自Herfried Wagner的完整帖子说

代码是基于:


谢谢,


Seth Rowe

Oh by the way, here''s the complete post from Herfried Wagner that that
code is based on:

Thanks,

Seth Rowe


有什么方法我可以进入表格'关闭/最小化/最大化事件

点击那些按钮(

表格右上角的3个小方形按钮)?
Is there a way I can get into a form''s close/minimize/maximize events when
those buttons (the 3 small squared button in the upper right corner of a
form) are clicked?



\\\

Private Const WM_SYSCOMMAND As Int32 =& H112


Private Const SC_MAXIMIZE As Int32 =& HF030

Private Const SC_MINIMIZE As Int32 =& HF020

Private Const SC_RESTORE As Int32 =& HF120

Private Const SC_CLOSE As Int32 =& HF060


受保护的覆盖子WndProc(ByRef m As Message)

如果m.Msg = WM_SYSCOMMAND那么

选择案例m.WParam.ToInt32()

案例SC_MAXIMIZE

Debug.WriteLine(表格获得最大化。)

案例SC_MINIMIZE

Debug.WriteLine(表格被最小化。)

案例SC_RESTORE

Debug.WriteLine(" ;表格恢复。)

案例SC_CLOSE

Debug.WriteLine(表格关闭。)

结束选择

结束如果

MyBase.WndProc(m)

结束子

///


-

MS Herfried K. 。瓦格纳

MVP< URL:http://dotnet.mvps.org/>

VB< URL:http://classicvb.org/petition/ >


rowe_newsgroups写道:

\\\
Private Const WM_SYSCOMMAND As Int32 = &H112

Private Const SC_MAXIMIZE As Int32 = &HF030
Private Const SC_MINIMIZE As Int32 = &HF020
Private Const SC_RESTORE As Int32 = &HF120
Private Const SC_CLOSE As Int32 = &HF060

Protected Overrides Sub WndProc(ByRef m As Message)
If m.Msg = WM_SYSCOMMAND Then
Select Case m.WParam.ToInt32()
Case SC_MAXIMIZE
Debug.WriteLine("Form gets maximized.")
Case SC_MINIMIZE
Debug.WriteLine("Form gets minimized.")
Case SC_RESTORE
Debug.WriteLine("Form gets restored.")
Case SC_CLOSE
Debug.WriteLine("Form gets closed.")
End Select
End If
MyBase.WndProc(m)
End Sub
///

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

rowe_newsgroups wrote:


投入以下内容:


Private Const WM_SYSCOMMAND As Int32 =& H112

Private Const SC_MINIMIZE As Int32 =& HF020


受保护的覆盖子WndProc(ByRef m As Message)

如果m.Msg = WM_SYSCOMMAND那么

如果m.WParam.ToInt32()= SC_MINIMIZE则退出Sub

结束如果

MyBase.WndProc(m)

结束子


谢谢,


Seth Rowe


MOJO写道:
Throw in the following:

Private Const WM_SYSCOMMAND As Int32 = &H112
Private Const SC_MINIMIZE As Int32 = &HF020

Protected Overrides Sub WndProc(ByRef m As Message)
If m.Msg = WM_SYSCOMMAND Then
if m.WParam.ToInt32() = SC_MINIMIZE then Exit Sub
End If
MyBase.WndProc(m)
End Sub

Thanks,

Seth Rowe
M O J O wrote:




我正在创建自己的补充工具栏(就像在Vista中一样。


在我的XP的快捷菜单中,我有一个名为显示桌面的按钮。当我点击

时,所有表格都被最小化。


由于我不希望我的SideBar被最小化,我该如何防止这种情况? />

谢谢!


MOJO
Hi,

I''m creating my own Sidebar (like in Vista).

In my XP''s quick menu, I have a button called "Show Desktop". When I click
it all forms are minimized.

Since I don''t want my SideBar to be minimized, how do I prevent this?

Thanks!

M O J O


Hi Seth ,


那是行不通的。


有什么想法吗?


谢谢。


MOJO


" rowe_newsgroups"写道:
Hi Seth,

That didn''t work.

Any idea?

Thanks.

M O J O

"rowe_newsgroups" wrote:

投掷以下内容:

私有Const WM_SYSCOMMAND为Int32 =& H112

Private Const SC_MINIMIZE As Int32 =& HF020


受保护的覆盖子WndProc(ByRef m As Message)

如果m.Msg = WM_SYSCOMMAND则

如果m.WParam.ToInt32()= SC_MINIMIZE则退出Sub

结束如果

MyBase.WndProc(m)

结束Sub


谢谢,


Seth Rowe


MOJO写道:
Throw in the following:

Private Const WM_SYSCOMMAND As Int32 = &H112
Private Const SC_MINIMIZE As Int32 = &HF020

Protected Overrides Sub WndProc(ByRef m As Message)
If m.Msg = WM_SYSCOMMAND Then
if m.WParam.ToInt32() = SC_MINIMIZE then Exit Sub
End If
MyBase.WndProc(m)
End Sub

Thanks,

Seth Rowe
M O J O wrote:




我正在创建自己的补充工具栏(就像在Vista中一样)。


在我的XP快捷菜单中,我有一个名为显示桌面的按钮。当我点击

时,所有表格都被最小化。


由于我不希望我的SideBar被最小化,我该如何防止这种情况? />

谢谢!


MOJO
Hi,

I''m creating my own Sidebar (like in Vista).

In my XP''s quick menu, I have a button called "Show Desktop". When I click
it all forms are minimized.

Since I don''t want my SideBar to be minimized, how do I prevent this?

Thanks!

M O J O



这篇关于防止形式最小化的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆