今天在做应用的时候,想让窗口关闭提示,可是遇到了一点麻烦,问题在于wm右上角有两种情况ok和X两种情况,当窗口右上角是x的时候这个时候调用窗体的Closing事件是没有问题的,可是当窗体是ok调用这个事件根本不执行,后来参考了一篇文章,在属性中修改:
原文“在Pocket Pc右上角的有2种按钮,叉和ok,叉代表最小化,ok代表关闭。最小化程序会使得程序占用内存,没有释放内存,会使得系统越跑越慢。
将最小化变为ok,通过设置form的属性MinimizeBox,true为最小化按钮,false为ok按钮。” 当然在wm中无论主窗体你设置true还是false都是显示ok(我也没有明白为啥,主窗体是ok,修改窗体则为X)不过你修改MinimizeBox为false的时候Closing事件就可以执行了,为了就可以进行判断了
private void Form1_Closing(object sender, CancelEventArgs e)
{
//捕捉窗体Close事件,关闭窗口时提示
DialogResult re=MessageBox.Show("保存数据退出(是)直接退出(否)返回请按(取消)", "系统提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);
if ( re== DialogResult.Yes)
{
menuItem4_Click( sender, e);
}
else if(re==DialogResult.No)
{
e.Cancel = false;//允许退出系统
}
else
{
e.Cancel = true;//不允许退出系统
}
}
对于何时出现X何时出现ok我也没有很明白 只是在使用的时候如此进行就可以了,对于x直接进行cloing不许进行比的设置。
如果你想在wm中直接取消右上角的图标 那么在form属性中controlBox属性中选择false就可以。
下面是我看见的一篇不错的博文引用一下
http://hi.baidu.com/wangwenfang521/blog/item/2fce88113c380274ca80c417.html
原文如下:
2009-09-10 09:54使用.net 平台开发Mobile程序时,由于是基于移动设备,都和PC有很大差距,要求特别关注内存开销。另外相比PC来说,所支持的API是非常少的,需要经常查SDK。一些小地方若不留意,也会引起麻烦。
比如关于程序退出,即使在Close的event handler里写出处理代码,可是因为属性问题,这段代码并不会被执行。
在Pocket Pc右上角的有2种按钮,叉和ok,叉代表最小化,ok代表关闭。最小化程序会使得程序占用内存,没有释放内存,会使得系统越跑越慢。
将最小化变为ok,通过设置form的属性MinimizeBox,true为最小化按钮,false为ok按钮。
比如关于程序退出,即使在Close的event handler里写出处理代码,可是因为属性问题,这段代码并不会被执行。
在Pocket Pc右上角的有2种按钮,叉和ok,叉代表最小化,ok代表关闭。最小化程序会使得程序占用内存,没有释放内存,会使得系统越跑越慢。
将最小化变为ok,通过设置form的属性MinimizeBox,true为最小化按钮,false为ok按钮。
我参考的博文如下:
http://hi.baidu.com/wangwenfang521/blog/item/2fce88113c380274ca80c417.html
分享到:
相关推荐
WM_CLOSE = $0010 //当一个窗口或应用程序要关闭时发送一个信号 WM_QUERYENDSESSION= $0011 //当用户选择结束对话框或程序自己调用ExitWindows函数 WM_QUIT= $0012 //用来结束程序运行或当程序调用postquitmessage...
2、多窗口玩Flash时,双击关闭Flash窗口UC会自动退出 3、下载升级包空间不足时会出现流量异常 4、下载部分移动音乐导致自动退出 5、大于40k的GIF无法显示 6、迅雷离线下载视频文件, 手机播放器无法播放 7、密码...
2、多窗口玩Flash时,双击关闭Flash窗口UC会自动退出 3、下载升级包空间不足时会出现流量异常 4、下载部分移动音乐导致自动退出 5、大于40k的GIF无法显示 6、迅雷离线下载视频文件, 手机播放器无法播放 7、密码...
两个新的对话框都已建立完毕,下来是如何在主对话框中使用的问题。 首先,两个新对话框都有各自的类,分别在SubDialog1.h和SubDialog2.h中有定义。(类的细节则在对应的cpp中定义) 因此,主对话框想要调用这两个...
最后一个参数表示该窗口类对象是否自动析构,如果为TRUE,则创建的窗口关闭时该对象自动析构。 控件类对象均自动析构,该参数被忽略。 自定义的窗口类默认是手工销毁,也可以在窗口创建后调用SetAutoDelete(TRUE)来...
2、多窗口玩Flash时,双击关闭Flash窗口UC会自动退出 3、下载升级包空间不足时会出现流量异常 4、下载部分移动音乐导致自动退出 5、大于40k的GIF无法显示 6、迅雷离线下载视频文件, 手机播放器无法播放 7、密码...
如果此参数为HWND_BROADCAST,则消息将被发送到系统中所有顶层窗口,包括无效或不可见的非自身拥有的窗口、被覆盖的窗口和弹出式窗口,但消息不被发送到子窗口。 Msg:指定被发送的消息。 wParam:指定附加的消息...
例如你希望对菜单选择进行处理那么你可以定义对WM_COMMAND进行处理的代码,如果希望在窗口中进行图形输出就必须对WM_PAINT进行处理。 3、未处理的消息到那里去了:M$为窗口编写了默认的窗口过程,这个窗口过程将...
VC/C++源码,文件操作,浩方 最近迷上了魔兽真三国无双...设定在15秒内,看是否出现人满的那个提示窗口,出现则关闭他,继续下一个房间,如果到了最后一个房间则又从头开始,如果没有出现,则认定成功进入,3秒后退出。
6.3 SDI窗口、MDI主、子窗口的关闭 137 第7章 MFC的DLL 139 7.1 DLL的背景知识 139 7.2 调用约定 141 7.2.1 MFC的DLL应用程序的类型 142 7.3 DLL的几点说明 143 7.4 输出函数的方法 145 第8章 MFC的进程和线程 148 ...
6.3 SDI窗口、MDI主、子窗口的关闭 137 第7章 MFC的DLL 139 7.1 DLL的背景知识 139 7.2 调用约定 141 7.2.1 MFC的DLL应用程序的类型 142 7.3 DLL的几点说明 143 7.4 输出函数的方法 145 第8章 MFC的进程和线程 148 ...
设定在15秒内,看是否出现人满的那个提示窗口,出现则关闭他,继续下一个房间,如果到了最后一个房间则又从头开始,如果没有出现,则认定成功进入,3秒后退出。 参考资料: 1.读取坐标那部分参考了网络上的...
杀戮这就像 Windows 的 xkill! 这个简单的 C# 应用程序允许您通过单击其中一个窗口轻松终止 (SIGKILL) 任何进程。... 要软关闭(WM_CLOSE 主窗口),请改用鼠标中键。 要退出,请按鼠标右键或ESC 。
在用户按了码元之外的字符时, 会自动关闭输入法而执行其他功能, 或者有提示. C3: 实现更方便的符号输入方案, 将字符映射表适时调用, 利用输入法相应的编码或自定编码, 在多行多列的二维表及标签卡间切换可选码. C4:...
0551 修改其他进程中窗口的标题 359 0552 如何设计换肤程序 360 0553 PE档案格式分析 364 0554 修改应用程序图标 365 0555 列举应用程序使用的dll文件 368 0556 调用具有命令行参数的应用程序 369 0557...
0551 修改其他进程中窗口的标题 359 0552 如何设计换肤程序 360 0553 PE档案格式分析 364 0554 修改应用程序图标 365 0555 列举应用程序使用的dll文件 368 0556 调用具有命令行参数的应用程序 369 0557...
10. 修正了量产工具提示关闭问题。 11.修正高级格式化模式,量产过的可以直接高格,建立FAT表。 12.用户可以自定义序列号,最多16位。 13.扫描级别此版本暂时只保留了级别1,4,7,11.后续版本还会作调整。 14.用户...
WM_INPUTLANGCHANGEREQUEST消息,该消息可以在指定窗口中后台激活服务输入法,这样, 系统中所有拥有窗口的进程就都被我们的服务输入法注入了。服务输入法注入程序之后,就 会根据控制程序传递过来的参数加载目标...