文档库 最新最全的文档下载
当前位置:文档库 › 窗体的关闭事件

窗体的关闭事件

窗体的关闭事件
窗体的关闭事件

窗体的关闭事件

对于关注对Windows 窗体应用程序中引发的每个事件按次序进行处理的开发人员来说,事件引发的顺序特别重要。

当Windows 窗体应用程序启动时,主窗体的启动事件按以下顺序引发

1、System.Windows.Forms.Control.HandleCreated在为控件创建句柄时发生。

2、System.Windows.Forms.Control.BindingContextChanged 当BindingContext 属性的值更改时发生。注:每个Windows 窗体至少有一个BindingContext

对象,详见MSDN。

3、System.Windows.Forms.Form.Load 在第一次显示窗体前发生。

4、System.Windows.Forms.Control.VisibleChanged 在Visible 属性值更改时发生。注:如果通过编程修改或用户交互更改Visible 属性,则将引发此事件。

5、System.Windows.Forms.Form.Activated 当使用代码激活或用户激活窗体时发生。

6、System.Windows.Forms.Form.Shown 只有在首次显示窗体时才会引发Shown 事件;随后执行的最小化、最大化、还原、隐藏、显

示或无效化和重新绘制操作都不会引发该事件。

当应用程序关闭时,主窗体的关闭事件按以下顺序引发:

1、System.Windows.Forms.Form.Closing 在关闭窗体时发生。注意:在.NET Framework 版本 2.0 中,Closing 事件已过时,应改用

FormClosing 事件。

2、System.Windows.Forms.Form.FormClosing 在关闭窗体前发生,此时可以取消窗体的关闭。

3、System.Windows.Forms.Form.Closed 关闭窗体后发生。注意:在.NET Framework 版本 2.0 中,Closed 事件已过时,应改用

FormClosed 事件。

4、System.Windows.Forms.Form.FormClosed 关闭窗体后发生。

5、System.Windows.Forms.Form.Deactivate 当窗体失去焦点并不再是活动窗体时发生。

注意:当调用Application.Exit 方法以退出应用程序时,不引发Form.Closed 和Form.Closing 事件,但是会激发Form.FormClosed 和Form.FormClosing 事件。

FormClosing :在窗体关闭时,FormClosing 事件发生。窗体关闭时,此事件会得到处理,从而释放与此窗体关联的所有资源。如果取消此事件,则该窗体保持打开状态。若要取消窗体的关闭操作,请将传递给事件处理程序的FormClosingEventArgs 的Cancel 属性设置为true。

FormClosed:在用户或Application 类的Close 方法或Exit 方法关闭窗体后,会发生FormClosed 事件。

若要防止窗体关闭,请处理FormClosing 事件,并将传递给事件处理程序的CancelEventArgs 的Cancel 属性设置为true。可以使用此事件执行一些任务,如释放窗体使用的资源,还可使用此事件保存输入窗体中的信息或更新其父窗体。当窗体显示为模式对话框时,单击“关闭”按钮(窗体右上角带X 的按钮)会隐藏窗体并将DialogResult 属性设置为DialogResult.Cancel。通过在窗体的FormClosing 事件的事件处理程序中设置DialogResult 属性,可以在用户单击“关闭”按钮时重写分配给DialogResult 属性的值。

如果窗体是多文档界面(MDI) 父窗体,则在引发MDI 父窗体的FormClosing 事件之前将引发所有MDI 子窗体的FormClosing 事件。同样,在引发MDI 父窗体的FormClosed 事件之前,将引发所有MDI 子窗体的FormClosed 事件。取消MDI 子窗体的FormClosing 事件不能防止引发MDI 父窗体的FormClosing 事件。但是,取消该事件会将作为参数传递给父窗体的FormClosingEventArgs 类的Cancel 属性设置成false。要强制关闭所有MDI 父窗体和子窗体,请将MDI 父

窗体中的Cancel 属性设置成false。

窗体显示为无模式对话框时,在close之后,此窗体的资源已释放,不能再调用show方法使窗体可见。

窗体显示为有模式对话框时,单击关闭按钮(" X " 的按钮在窗体的右上角) 会隐藏窗体并且DialogResult 属性将设置为DialogResult.Cancel。当用户单击该对话框的关闭的窗体按钮或设置DialogResult 属性的值时,.NET framework不调用Close 方法,该窗体会隐藏并可重新显示,而不必创建对话框的新实例。由于作为对话框中显示的窗体隐藏而未关闭,当窗体由应用程序时不再需要,必须调用该窗体的Dispose 方法。

在以下两种情况下调用Close 不会释放窗体:(1) 窗体是多文档界面(MDI) 应用程序的一部分且是不可见的;(2)该窗体是模式对话框。在这些情况下,需要手动调用Dispose 来将窗体的所有控件都标记为需要进行垃圾回收。

///

/// 最小化到托盘程序

///

///

///

private void notifyIcon1_Click(object sender, EventArgs e)

{

if (this.WindowState == FormWindowState.Normal)

{

this.WindowState = FormWindowState.Minimized; HiddenForm();

}

else if (this.WindowState == FormWindowState.Minimized)

{

ShowForm();

}

}

private void FrmMain_SizeChanged(object sender, EventArgs e)

{

if (this.WindowState == FormWindowState.Minimized)//最小化

{

HiddenForm();

}

}

private void FrmMain_FormClosing(object sender, FormClosingEventArgs e) {

e.Cancel = true;

HiddenForm();

}

///

/// 显示窗口

///

private void ShowForm()

{

this.Show();

this.WindowState = FormWindowState.Normal;

this.ShowInTaskbar = true;

this.Activate();

}

///

/// 隐藏窗口

///

private void HiddenForm()

{

this.Hide();

}

MFC中关闭窗口的几种办法

MFC中关闭窗口的几种办法+MFC中MessageBox的用法MFC中关闭窗口的几种办法: 退出程序用AfxGetMainWnd()->SendMessage(WM_CLOSE); 关闭当前窗口用DestroyWindow( ); 关闭模式对话框用EndDialog(0); MFC中MessageBox的用法 消息框是个很常用的控件,属性比较多,本文列出了它的一些常用方法,及指出了它的一些应用场合。 1. MessageBox("这是一个最简单的消息框!"); 2. MessageBox("这是一个有标题的消息框!","标题"); 3. MessageBox("这是一个确定取消的消息框!","标题", MB_OKCANCEL ); 4. MessageBox("这是一个警告的消息框!","标题", MB_ICONEXCLAMA TION ); 5. MessageBox("这是一个两种属性的消息框!","标题", MB_ICONEXCLAMA TION|MB_OKCANCEL ); 6. if(MessageBox("一种常用的应用","标题",MB_ICONEXCLAMATION|MB_OKCANCEL)==IDCANCEL) return; 附其它常用属性 系统默认图标,可在消息框上显示 X错误MB_ICONHAND, MB_ICONSTOP, and MB_ICONERROR ?询问MB_ICONQUESTION !警告MB_ICONEXCLAMATION and MB_ICONW ARNING i信息MB_ICONASTERISK and MB_ICONINFORMA TION 按钮的形式 MB_OK 默认 MB_OKCANCEL 确定取消 MB_YESNO 是否 MB_YESNOCANCEL 是否取消 返回值 IDCANCEL 取消被选 IDNO 否被选 IDOK 确定被选 IDYES 是被选

qq为什么在聊天窗口的下方放一个“关闭”按钮

QQ为什么在聊天窗口的下方放一个“关闭”按钮? 【牛乐的回答(59票)】: 别整没用的,开口闭口一大堆什么原则,中国和外国思维方式还不一样呢,拿着老外的原则装,当年QQ刚出来的时候,懂互联网的不多,不是快捷键谁都会用,你知道一个破滚轮鼠标跑一个窗口然后再点那个小破×多麻烦呢。那个地方是最好的,还标了“关闭”两个字,简单明了,甚至当年不懂浏览器的人都会玩QQ,估计腾讯自己都没有意识到这是多棒的设计。 我想到一个小故事,在这里虽说不很合适,但看到那些开口闭口讲原则的人还是忍不住发上去。 迪斯尼乐园的设计非常严格,包括其中的一些细微的路径也极为严谨精致。1971年,伦敦国际园林建筑艺术研讨会上,迪斯尼乐园的路径设计就获得过“世界最佳设计”称号。当时迪斯尼乐园的总设计师是格罗培斯。迪斯尼的路径设计获奖后,许多记者去采访这位大名鼎鼎的设计师,希望他公开自己的设计灵感与心得。格罗培斯说:“其实那不是我的设计,而是游客的智慧。”接着,他公开了路径的修筑过程———迪斯尼乐园主体工程完工后,格罗培斯宣布暂时停止修筑乐园里的道路,接着指挥工人们在空地上撒上草种。接下来,乐园宣布提前试行开放。五个月后,乐园里绿草茵茵,但草

地上也出现了不少窄宽不一、幽雅自然的小径,那是蜂拥而来的游客们践踏出来的。格罗培斯马上命令工人们根据草地上出现的小路铺设人行道———就是这些由游客们自己不 知不觉中用脚步“设计”出来的路径,在后来世界各地的园林设计大师们眼中成了“幽雅自然、简捷便利、个性突出”的优秀设计,也理所当然被专家们评为“世界最佳”。 肯定有人说,这也是**原则里的。好吧,脑筋刻板至此,还做什么产品经理。死套公式堆积木都堆不好啊。这个故事放这里的意思是说,用户啊,一定站在用户角度啊笨蛋。 【阿企的回答(44票)】: 新员工培训时,cdc的同事讲过这个案例,大意是,后台数据显示,一半的人要点关闭,就保留了。我们自以为了解用户习惯,设计原则,但事实往往不是那回事。数据会说话,尤其是面对海量用户时。 【nicing的回答(16票)】: 接着@Helium Chan 的答案说: 发送消息后,最常用的操作就是关闭窗口,放在这就是为了方便点击。 如果非要找点科学依据,那就是“费茨法则”。费茨法则是用户界面设计人机工程学中的著名原则,其基本思想是: 目标越远,鼠标到目标所花费的时间就越长。

批处理ie相关操作(添加信任-启用activex-关闭弹窗阻止)讲课教案

批处理I E相关操作(添加信任网站-启用A c t i v e X-关闭弹窗阻 止)

批处理添加信任网站启用ActiveX 关闭弹窗阻止 rem 将以下保存到添加信任网站.bat 文件 rem 创建自解压文件,将此添加信任网站.bat文件解压 到 %USERPROFILE%\Favorites\办公网站\ 下(C盘根目录有时不可写) rem 受信站点配置开始 rem datong reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\In ternet Settings\ZoneMap\Domains\https://www.wendangku.net/doc/2816269165.html," /v http /t REG_DWORD /d 0x00000002 /f rem 受信站点配置结束 rem 主页 reg add "HKCU\Software\Microsoft\Internet Explorer\Main" /v "Start Page" /t REG_SZ /d https://www.wendangku.net/doc/2816269165.html, /f reg add "HKCU\Software\Microsoft\Internet Explorer\Main" /v "Secondary Start Pages" /t REG_SZ /d https://www.wendangku.net/doc/2816269165.html,/ /f del fosoft.reg echo Windows Registry Editor Version 5.00 >> fosoft.reg rem Activex配置开始

窗体的关闭事件

窗体的关闭事件 对于关注对Windows 窗体应用程序中引发的每个事件按次序进行处理的开发人员来说,事件引发的顺序特别重要。 当Windows 窗体应用程序启动时,主窗体的启动事件按以下顺序引发 1、System.Windows.Forms.Control.HandleCreated在为控件创建句柄时发生。 2、System.Windows.Forms.Control.BindingContextChanged 当BindingContext 属性的值更改时发生。注:每个Windows 窗体至少有一个BindingContext 对象,详见MSDN。 3、System.Windows.Forms.Form.Load 在第一次显示窗体前发生。 4、System.Windows.Forms.Control.VisibleChanged 在Visible 属性值更改时发生。注:如果通过编程修改或用户交互更改Visible 属性,则将引发此事件。 5、System.Windows.Forms.Form.Activated 当使用代码激活或用户激活窗体时发生。 6、System.Windows.Forms.Form.Shown 只有在首次显示窗体时才会引发Shown 事件;随后执行的最小化、最大化、还原、隐藏、显 示或无效化和重新绘制操作都不会引发该事件。 当应用程序关闭时,主窗体的关闭事件按以下顺序引发: 1、System.Windows.Forms.Form.Closing 在关闭窗体时发生。注意:在.NET Framework 版本 2.0 中,Closing 事件已过时,应改用 FormClosing 事件。 2、System.Windows.Forms.Form.FormClosing 在关闭窗体前发生,此时可以取消窗体的关闭。 3、System.Windows.Forms.Form.Closed 关闭窗体后发生。注意:在.NET Framework 版本 2.0 中,Closed 事件已过时,应改用 FormClosed 事件。 4、System.Windows.Forms.Form.FormClosed 关闭窗体后发生。 5、System.Windows.Forms.Form.Deactivate 当窗体失去焦点并不再是活动窗体时发生。 注意:当调用Application.Exit 方法以退出应用程序时,不引发Form.Closed 和Form.Closing 事件,但是会激发Form.FormClosed 和Form.FormClosing 事件。 FormClosing :在窗体关闭时,FormClosing 事件发生。窗体关闭时,此事件会得到处理,从而释放与此窗体关联的所有资源。如果取消此事件,则该窗体保持打开状态。若要取消窗体的关闭操作,请将传递给事件处理程序的FormClosingEventArgs 的Cancel 属性设置为true。 FormClosed:在用户或Application 类的Close 方法或Exit 方法关闭窗体后,会发生FormClosed 事件。 若要防止窗体关闭,请处理FormClosing 事件,并将传递给事件处理程序的CancelEventArgs 的Cancel 属性设置为true。可以使用此事件执行一些任务,如释放窗体使用的资源,还可使用此事件保存输入窗体中的信息或更新其父窗体。当窗体显示为模式对话框时,单击“关闭”按钮(窗体右上角带X 的按钮)会隐藏窗体并将DialogResult 属性设置为DialogResult.Cancel。通过在窗体的FormClosing 事件的事件处理程序中设置DialogResult 属性,可以在用户单击“关闭”按钮时重写分配给DialogResult 属性的值。 如果窗体是多文档界面(MDI) 父窗体,则在引发MDI 父窗体的FormClosing 事件之前将引发所有MDI 子窗体的FormClosing 事件。同样,在引发MDI 父窗体的FormClosed 事件之前,将引发所有MDI 子窗体的FormClosed 事件。取消MDI 子窗体的FormClosing 事件不能防止引发MDI 父窗体的FormClosing 事件。但是,取消该事件会将作为参数传递给父窗体的FormClosingEventArgs 类的Cancel 属性设置成false。要强制关闭所有MDI 父窗体和子窗体,请将MDI 父

Java如何去掉JFrame上的最大化最小化和关闭按钮

Java-如何去掉JFrame上的最大化最小化和关闭按钮 在JDK1.4以前,我们只有一种方式来去掉窗口的标题栏,那就是直接使用JWindow,用JWindow来代替JFrame使用。但用过JWindow的人一定知道,JWindow在操作系统的任务栏是不可见的,这样我们就无法在几个视窗之间来切换到这个窗口了。 使用JWindow也是很多人知道的一种去掉标题栏的方式。但从Java1.4开始,有一种新的方式可以使用,我们来看看。 现在我们创建一个类并继承于JFrame, public class DecoratedFrame extends JFrame { public DecoratedFrame() { this.getContentPane().add(new JLabel("Just a test.")); this.setUndecorated(true); // 去掉窗口的装饰 this.getRootPane().setWindowDecorationStyle(JRootPane.NONE);//采用指定的窗口装饰风格 this.setSize(300,150); } public static void main(String[] args) { JFrame frame = new DecoratedFrame(); frame.setVisible(true); } } 请看加了注释的两行,要去掉标题栏,关键代码就是这两行,第1行去掉窗口的装饰,第2行为窗口指定头饰风格。在这里,可以通过调用 this.getRootPane().setWindowDecorationStyle()方法为窗口指定以下的装饰风格: NONE 无装饰(即去掉标题栏) FRAME 普通窗口风格 PLAIN_DIALOG 简单对话框风格 INFORMATION_DIALOG 信息对话框风格 ERROR_DIALOG 错误对话框风格 COLOR_CHOOSER_DIALOG 拾色器对话框风格 FILE_CHOOSER_DIALOG 文件选择对话框风格 QUESTION_DIALOG 问题对话框风格 WARNING_DIALOG 警告对话框风格 在使用Jframe的时候,普遍都会有标题栏,还有最小化,最大化,关闭按纽的,还要实现拖

怎样解除对弹出窗口的拦截

为什么我在点击法定代表人时,看不到弹出窗口? 可能是由于您使用了弹出窗口拦截功能,为了确保您在填写时能成功看到界面请您在选择的时候首先务必要关掉诸如3721、google等拦截弹出窗口软件。 怎样解除对弹出窗口的拦截? 首先,你得知道你的IE浏览器安装了哪一个阻止弹出窗口软件,以下你就可以很清楚的知道你的IE浏览器安装了哪一个软件工具。 (1).Windows XP SP2 中的IE的“弹出窗口阻止器”样式:(设置过程) IE浏览器的“工具”下拉菜单中有“弹出窗口阻止程序”一项,就说明你用的是SP2的IE浏览器 (2).雅虎助手的样式:(设置过程) (3).3721上网助手的样式:(设置过程) (4).MSN搜索工具栏的样式:(设置过程) (5).Google搜索工具栏的样式:(设置过程)

然后,在知道你的IE浏览器安装了哪一个软件工具后,就可以“对症下药”,下面就一个个告诉你如何阻止弹出窗口软件,让弹出的窗口继续弹出来。 (1).Windows XP SP2 中的IE的“弹出窗口阻止器”的设置过程: 1).打开 Internet Explorer。 2).在“工具”菜单中,指向“弹出窗口阻止器”,然后单击“关闭窗口阻止器设置”,然后再刷新页面就可以看到弹出窗口页面。 3).如果想要看到某个特定网站中的弹出窗口,可以在上图单击“弹出窗口阻止器设置”,请在“要允许的网站地址”框中键入该站点的地址(或 URL),然后单击“添加”。

“弹出窗口阻止器设置”窗口 (2).雅虎助手的设置过程: 1).打开 Internet Explorer。 2).在雅虎助手的工具栏上,看到“已拦截”按钮,点击它,可弹出下拉菜单窗口,点击“不拦截当前站点广告”,并把“拦截弹出广告”、“拦截浮动广告”、“拦截Flash广告”前面的钩都去掉(单击它就可以去掉),然后再刷新页面就可以看到弹出窗口页面。

如何使用键盘退出或关闭窗口

如何使用键盘退出或关闭窗口,(ESC键除外,是游戏,电影之类的)最好回答者能多教些同样的技巧? 如何使用键盘退出或关闭窗口,(ESC键除外,是游戏,电影之类的)最好回答者能多教些同样的技巧? 蓝兰丽 2009-05-14 14:38:31 发布 2个回答 ?回答 ?liangjingfang | 2009-05-14 14:58:50 ?有0人认为这个回答不错 | 有0人认为这个回答没有帮助 ?一、在WINDOWS中最常用到的几组快捷键及一些特殊键位 (一)以下是一些Windows常用快捷键(适用于WINDOWS系列的系统及相对应命令的程序) CTRL+C――――复制 CTRL+X――――剪切 CTRL+V――――粘贴 CTRL+S――――保存 CTRL+Z――――撤消 DELETE―――删除或SHIFT+DELETE―永久删除所选项 CTRL+A――――选中全部内容。 ALT+TAB―――切换当前程序 ALT+F4 ―――关闭当前应用程序 (二)特殊键位说明及功能 Windows键位于CTRL和ALT之间带有窗口图样的键调用开始菜单或和其它键组合使用 BACKSPACE键退格键消除空格或向左删除文档 SPACEBAR 空格键输入空格或在某复选框中选取 Application 键微软自然键选中某个项目时显示其快键菜单 Shift 上档键与其它键一起使用 Ctrl 控制键与其它键一起使用 Alt 组合键激活系统程序菜单或配合其它键一起使用 Tab 制表键在程序或菜单之间切换 Pause/break 暂停键电脑开机自检时按下可暂停当前屏幕,按下继续 Scroll lock 锁屏键当处于滚屏状态时按下该键停止 Print Screen/SysRq 截屏键截取当前屏幕到粘贴板 NumLock 数字开关键小键盘数字开关键 Caps Lock 大小写开关键 二、几种常用程序中的快捷键应用

弹出窗口阻止的解决办法

弹出窗口FAQ 什么是弹出窗口: 弹出窗口是由页面打开的一种小型 Web 浏览器窗口。它们通常会在您访问网站或页面时打开,也可能会在您单击网站上的链接或按钮时打开,远程课堂的一些课堂内通知、课件和平时作业需要弹出窗口进行控制。 为什么会有弹出窗口拦截: 由于一些不良站点或网站弹出广告需要,在用户范围网站的时候会经常弹出一些窗口,显示一些不希望看到或者比较讨厌的内容,弹出窗口控制软件/插件应运而生,保护用户避免过多的骚扰。 通常是哪些软件或程序会限制弹出窗口: ?如果你的系统是xp sp2以上或者IE版本是6.0 sp2或者IE7,IE本身会提供弹出窗口拦截; ?一些第三方的IE插件也会提供弹出窗口的拦截功能; ?一些使用IE内核的外套浏览器(如:腾讯浏览器,万能浏览器等)和一些些非Internet Explorer 的浏览器,如Maxthon傲游(原名:MyIE2),sleipnir浏览器,也提供弹出窗口拦截功能,鉴于网 络学习的性质,不建议使用这类浏览器进行平时作业; ?某些杀毒软件:如瑞星、诺顿网络安全特警等软件中关于弹出窗口的设置也可提供此功能。 ?一些常见具备弹出窗口控制的IE第三方插件 Google工具条 百度超级搜霸 MSN Toolbar Yahoo! Toolbar 瑞星卡卡助手 如何避免弹出被拦截 ?通用的避免弹出被拦截办法:在点击链接时,按住“CTRL”键盘,直到希望看到的窗口出现再松开, 如果未奏效,继续以下的尝试 ?将站点加入你的浏览器信任列表:

?如果你正在使用IE6.0 sp2或者IE7,使用如下方面操作: ?方法一:取消弹出窗口阻止程序 ?方法二:配置弹出窗口阻止程序: ?方法三:在浏览器窗口操作: 如果你在打开过程中看到IE显示窗口上方有一个小的黄条提示,如果没有看到,查看一

涨姿势![X]是如何成为关闭按钮的

要回溯[x]的发展历程,不妨从我们最熟悉的微软开始吧。使用windows的时候,你总能在屏幕的窗口上找到右上角的[x]。 然而,windows 1.0上,关闭窗口的按钮并非[x]

windows 1.0 windows 2.0也不是。windows 2.0 那么 windows 3.0呢?windows 3.0

实际上,直到windows 95的时候,[x]才真正出现在windows系统的界面上。这个时候的关闭按钮和最大化、最小化一同出现在窗口的右上角上,这一经典的窗口操作组合就此定型。 Windows 95

有证据证明,这一设计其实是后期加上去的。早期开发阶段的windows 95(开发代号:芝加哥)中,最大化和最小化按钮是经过重新设计的,但是[x]关闭按钮和以往一样还置于顶栏的左侧。 Windows Chicago(1993年8月)

那么,是谁在最后一刻改变了这一设计呢?我不知道。但是这个人做出的这个设计,一直流传到了今天,并且影响了大量的系统和软件的GUI设计。 盖茨希望能让每一张办公桌和每一个家庭都用上电脑。所以,从windows 3.0开始,微软就会基于可用性反馈对GUI设计进行调整,进而有了改变大局的windows 95。 它真的有用!windows 95在竞争中打败了其他的操作系统,获得了世界上绝大多数的企业和家庭的认可。但是此刻我的目标并不是要告诉你[x]是什么时候变的流行的,而是要告诉你,它是如何成为UI设计中的重要组成部分的。 我们能不能在GUI设计中找到更多的和私用[x]的案例呢? 能。但是同时期的Mac OS确实没有使用[x]来作为关闭的标识,这一设计是到MacOSX的时代才启用的,并且只有当你将鼠标悬停在红色按钮上的时候,[x]才会显现。

Excel VBA编程 窗体的事件

Excel VBA 编程 窗体的事件 事件是指在应用程序运行期间,在窗体(或其内的对象)上,由于用户的操作或系统内自身原因而产生的有效动作,例如单击鼠标(Click )、移动鼠标(MouseMove )等都是事件。 VBE 中的对象可识别的事件是预先确定的,并不是所有对象都会具有相同事件。但每个事件都有一个事件过程的框架与之对应,当某一事件发生时,系统将立即执行对应的事件过程,因此,如果想利用这个过程去完成指定的任务,那么用户就必须在这个对应的事件过程中编写程序代码,以便响应发生的事件,否则,即使发生了可识别的事件,系统也不会做任何操作。下面介绍用户窗体中的一些常用事件。 1.Initialize 事件 Initialize 事件用来提供应用程序或用户窗体中的控件、变量等进行初始化。该事件的作用,于类模块中的该事件相同。 2.QueryClose 事件 该事件发生在UserForm 关闭之前。通常用这个事件确保在关闭应用程序之前,应用程序包含的用户窗体中没有未完成的任务。该事件的语法格式如下: 格式:Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) 该事件括号内有两个参数。其中,参数Cancel 是一个整数的值,用于指定是否在所有加载的用户窗体中停止QueryClose 事件,当Cancel 的值设置为0以外的任意值时,QueryClose 事件将停止执行,并防止关闭UserForm 与应用程序;参数CloseMode 为一个值或常数,用来指示引起QueryClose 事件的原因。 CloseMode 参数返回下列的值,如表12-4所示。 表12.4 CloseMode 参数的返回值 3.Te rmina te 事 件 该事件用于删除窗体中对象事例的所有引用。Terminate 事件发生在卸载窗体对象之后。如果应用程序为非正常退出,从而导致在内存中删除UserForm 的示例,将不会触发Terminate 事件。例如,在从内存中删除UserForm 之前,应用程序调用了End 语句,则UserForm 不会触发Terminate 事件。 4.Activate 和Deactivate 事件 当运行中的对象变成活动窗口的时候就会发生Activate 事件。而当对象不再是活动窗口时,则会发生Deactivate 事件。下面的情况会引发这两种事件: 提 示 “常数”是执行程序时保持常数值的命名项目。常数可以是字符串、数值、另一常 数、任何(除乘幂与Is 之外的)算术运算符或逻辑运算符的组合。每个主应用程序皆可定义自己的一组常数。用户也可以使用Const 语句定义附加常数。可在代码中的任何地方使用常数代替实际的值。

最新46自定义桌面最大化最小化和关闭按钮汇总

46自定义桌面最大化最小化和关闭按钮

自定义桌面最大化最小化和关闭按钮 1、取消窗体修饰 JFrame窗体默认采用本地系统的窗体修饰,如里需要根据我们的想法来定的话,那我们我先要取消窗体修饰setUndecorated()方法来实现。 public void setUndecorated(boolean undecorated) 2、设置按钮外观 设置鼠标经过图标 setIcon()方法可以为鼠标设置普通状态图标之外,还可以设置按钮的其他状态图标,如设置鼠标经过按钮时显示图标。setRolloverIcon(); public void setRolloverIcon(Icon rolloverIcon) 说明: rolloverIcon:鼠标经过按钮时显示图标对象 取消鼠标外观 button.setFocusPainted(false);//取消焦点绘制 button.setBorderPainted(false);//取消边框绘制 button.setContentAreaFilled(false);//取消内容绘制 这3个方法分别取消了按钮的焦点绘制、边框绘制以及内容绘制,这样按钮就没有外观和任何效果了,就象窗体取消修饰效果一样。 3、改变窗体状态 自定义最小化,最大化,都需要控制窗体的状态,这需要通过JFrame类的setExtendedState() public void setExtendedState(int state) state参数说明

NORMAL 默认大小的窗口 MAXIMISED_HORIZ 水平方向最大化窗口MAXIMIZED_VERT 垂直方向最大化窗口MAXIMIZED_BOTH 水平与垂直方向都最大化的窗口package com.swing05; import java.awt.Graphics; import java.awt.Image; import javax.swing.JPanel; /** * 带背景的面板组件 * * @author ZhongWei Lee */ public class BackgroundPanel extends JPanel { /** * 背景图片 */ private Image image; /** * 构造方法 */ public BackgroundPanel() { super(); ////如果为 true,则该组件绘制其边界内的所有像素 setOpaque(false); //布局格式 setLayout(null); } /** * 设置图片的方法 */ public void setImage(Image image) { this.image = image; } @Override

关闭弹出窗口拦截功能

关闭弹出窗口拦截功能 现在很多上网辅助软件(例如上网助手)提供了弹出窗口拦截功能,这项功能能够屏蔽弹出式的广告,但也会对应用系统造成影响,某些应该显示的弹出窗口也无法看到。 本系统在网银缴款和上传文件中使用弹出窗口,如果用户机器中安装了具有弹出窗口拦截功能的软件,可能会使系统无法显示。为了正常使用本系统,需要关闭辅助软件的弹出窗口拦截功能。下面以一些常见的上网辅助软件为例说明如何解除弹出窗口拦截功能,其它类似的软件可以参照此说明。 如果您经过设置还是无法登录,或是无法确定当前哪些软件对弹出窗口进行了拦截,还有一个应急的办法:用手先按住键盘上的Ctrl键不放,然后再用鼠标点击按钮,这样可以躲过拦截功能。 首先,你得知道你的IE浏览器安装了哪一个阻止弹出窗口软件,以下你就可以很清楚的知道你的IE浏览器安装了哪一个软件工具。 (1).Windows XP SP2 中的IE的“弹出窗口阻止器”样式:(设置过程)IE浏览器的“工具”下拉菜单中有“弹出窗口阻止程序”一项,就说明你用的是SP2的IE浏览器 (2).雅虎助手的样式:(设置过程) (3).3721上网助手的样式:(设置过程) (4).MSN搜索工具栏的样式:(设置过程) (5).Google搜索工具栏的样式:(设置过程)

(6)百度搜霸工具栏样式 (7)“诺顿网络安全特警”的弹出窗口拦截功能 然后,在知道你的IE浏览器安装了哪一个软件工具后,就可以“对症下药”,下面就一个个告诉你如何阻止弹出窗口软件,让弹出的窗口继续弹出来。 (1).Windows XP SP2 中的IE的“弹出窗口阻止器”的设置过程 1).打开Internet Explorer。 2). 在“工具”菜单中,指向“弹出窗口阻止器”,然后单击“关闭窗口阻止器设置”,然后再刷新页面就可以看到弹出窗口页面。 (2).雅虎助手的设置过程: 1).打开Internet Explorer。 2).在雅虎助手的工具栏上,看到“已拦截”按钮,点击它,可弹出下拉菜单窗口,点击“不拦截当前站点广告”,并把“拦截弹出广告”、“拦截浮动广告”、“拦截Flash广告”前面的钩都去掉(单击它就可以去掉),然后再刷新页面就可以看到弹出窗口页面。 (3).3721上网助手设置过程: 1).打开Internet Explorer。 2).在上网助手的工具栏上,看到“已拦截”按钮,点击它,可弹出下拉菜单窗口,点击“不拦截当前站点广告”,并把下面的四个拦截广告,“拦截弹出广告”、“拦截浮动广告”、“拦截Flash广告”、“拦截文字链广告”前面的钩去掉(单击它就可以去掉),然后再刷新页面就可以看到弹出窗口页面。

窗体组件(TForm)的事件

窗体组件(TForm)的事件窗体组件最重要的一些事件主要是在窗体创建和关闭时产生的事件。在创建窗体时,将会依次发生下列事件:OnCreate;OnShow;OnActivate;OnPaint。 1.OnCreate事件 在创建窗体时会产生这一事件。主窗体的这一事件经常用于对程序作一些初始化,如分配内存、为一些变量设置初始值等。 2.OnShow事件 窗体显示时(即是窗体的V isible属性被设为True时)会产生这一事件。 3.OnActivate事件 当窗体变为活动窗体时,会产生这一事件。下面的代码表示当窗体Forml为活动窗体时,其标题(Caption)变为“活动窗体”: VOid fastcall TForml::FormActivate(TObject Sender) { Caption=”活动窗体”; ) 4.OnPaint事件 当窗体重画时发生这一事件,利用OnPaint事件加代码可以进行重画窗体时的特殊处理,例如在窗体尺寸变更时需要重画窗体,就会产生这一事件。 5.OnClick事件 当鼠标在窗体上单击的时候发生该事件。 6.OnClick事件 当鼠标在窗体上单击的时候发生该事件。 7.OnClose事件 当关闭窗体的时候发生该事件,利用在OnClose事件加代码可以进行关闭窗体时的特殊处理。该事件有一个TcloseAction类型的Action参数。 8.OnCloseQuery事件 用OnCloseQuery可以指定窗体关闭的条件。 9.OnDestroy事件

当窗体被删除时发生这一事件,利用在OnDestroy事件加代码可以进行删除窗体时的特殊处理。 10.OnHelp事件 当窗体收到请求帮助时发生这一事件。 11.OnHide事件 当窗体被隐藏时(窗体的V isible属性设置为False时)发生收到请求帮助时发生这一事件。 12.OnResize事件 当窗体改变大小的时候发生这一事件,利用在OnResize事件加代码可以进行改变窗体大小的时候做特殊处理。

JQuery弹出层,点击按钮后弹出遮罩层,有关闭按钮

JQuery弹出层,点击按钮后弹出遮罩层,有关闭按钮 jQuery弹出层效果