在CDHtmlDialog中处理WindowClosing

要截获window.close(),就得截获CDHtmlDialog的WindowClosing。以下是示例代码:

// header
DECLARE_EVENTSINK_MAP()
void WindowClosing(VARIANT_BOOL IsChildWindow,
VARIANT_BOOL *Cancel);


// cpp
BEGIN_EVENTSINK_MAP(CWebTestDlg, CDHtmlDialog)
ON_EVENT(CWebTestDlg, AFX_IDC_BROWSER, DISPID_WINDOWCLOSING, WindowClosing, VTS_BOOL VTS_PBOOL)
END_EVENTSINK_MAP()

void CWebTestDlg::WindowClosing(VARIANT_BOOL IsChildWindow, VARIANT_BOOL *Cancel)
{
*Cancel = TRUE;
ShowWindow(SW_HIDE);
}

注意:CDHtmlDialog的ON_EVENT用的是AFX_IDC_BROWSER,CHtmlView用的是AFX_IDW_PANE_FIRST;用错了,效果就出不来了。

在CDHtmlDialog中处理WindowClosing,布布扣,bubuko.com

时间: 2024-08-05 04:27:34

在CDHtmlDialog中处理WindowClosing的相关文章

java.awt中windowClosing与windowClosed

1. windowClosing是关闭时调用的 2. windowClosed是关闭状态下调用的,windowClosing使用方法dispose();方法可以自动调用windowClosed. 3. 如果windowClosing使用了System.exit(0); 由于退出了虚拟机,windowClosed不被调用. 看如下代码 package test; import java.awt.Frame; import java.awt.event.WindowAdapter; import j

Java中使用Lua脚本语言(转)

Lua是一个实用的脚本语言,相对于Python来说,比较小巧,但它功能并不逊色,特别是在游戏开发中非常实用(WoW采用的就是Lua作为脚本的).Lua在C\C++的实现我就不多说了,网上随便一搜,到处都是这方面的介绍,我想说的是如何在Java下使用Lua以提高编程效率.增强你的程序可扩展性. 首先,要在Java上使用Lua脚本,必须有关于Lua脚本解释器以及Java程序可以访问这些脚本的相关API,即相关类库.我使用的是一个叫做LuaJava的开源项目,可以在: http://www.keple

Java中使用AWT编写自己的第三个图形界面,有菜单栏

该程序实现了的功能是出现菜单栏,点击菜单的退出选项就能退出窗体! package com.xywei.awt; import java.awt.Button;import java.awt.FlowLayout;import java.awt.Frame;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt

Android中Socket大文件断点上传

什么是Socket? 所谓Socket通常也称作“套接字”,用于描述IP地址和端口,是一个通信连的句柄,应用程序通常通过“套接字”向网络发送请求或者应答网络请求,它就是网络通信过程中端点的抽象表示.它主要包括以下两个协议: TCP (Transmission Control Protocol 传输控制协议):传输控制协议,提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据.TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功

Java中使用AWT编写自己的第四个图形界面--简单的记事本

弄了个简单的记事本,能进行简单的打开文件,编辑文件,保存文件,但是怎么都无法解决中文乱码问题,求大家指教…… . package com.xywei.awt; import java.awt.FileDialog;import java.awt.Frame;import java.awt.Menu;import java.awt.MenuBar;import java.awt.MenuItem;import java.awt.TextArea;import java.awt.event.Acti

提交了问题给Microsoft,期待回应 - Problem with CDHtmlDialog (Error: Js::JavascriptExceptionObject * __ptr64)

问题大概就是最近发现用户中不少更新的最新补丁的(特别是KB2962872)之后,使用CDHtmlDialog做前端UI的对话框会抛出异常,查了很久,无解. 无奈提交了一个问题给微软. 链接地址: Problem with CDHtmlDialog (Error: Js::JavascriptExceptionObject * __ptr64) 之前Google了一下,发现了一个和我类似的问题,也是今年2014年4月份提交的(估计英文版的windows系统补丁发布得比较早,我的用户反馈这个问题是从

【转 Java 中的内部类和匿名类

 Java 中的内部类和匿名类 2008-10-16 13:47:41 标签:Java 内部类 匿名类 休闲 职场 Java 中的内部类和匿名类* 为什么需要内部类? Java 内部类有什么好处?为什么需要内部类? 首先举一个简单的例子,如果你想实现一个接口,但是这个接口中的一个方法和你构想的这个类中的一个方法的名称,参数相同,你应该怎么办?这时候,你可以建一个内部类实现这个接口.由于内部类对外部类的所有内容都是可访问的,所以这样做可以完成所有你直接实现这个接口的功能. 不过你可能要质疑,更改一

Java中使用AWT编写自己的第一个图形界面

awt和swing是有区别的,swing是基于重量级awt上的轻量级组件,awt开发图形界面在跨平台方面没有swing好,所以一般使用swind组件比较好! package com.xywei.awt; import java.awt.Button;import java.awt.FlowLayout;import java.awt.Frame;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent; publi

java中解决组件重叠的问题(例如鼠标移动组件时)

java中解决组件覆盖的问题!     有时候在移动组件的时候会出现两个组件覆盖的情况,但是你想让被覆盖的组件显示出来或者不被覆盖! 在设计GUI时已经可以定义组件的叠放次序了(按摆放组件的先后顺序). 真正麻烦的是响应哪个组件,这就要创建一个链表,把组件对象按顺序存起来,响应事件时扫描这个链表,按 链表中的先后顺序选择响应组件对象.     所以要想满足自己的需求,那么在添加组件的时候就要注意顺序就好了! 另外如果不想用上面的方法,那么你就采用JLayeredPane这个类,分层面板可以帮助你