社区
非技术类
帖子详情
有否办法禁止窗口响应CTRL+F4,当然是CMDIChildWnd,不能在里面控制,需要通过修改其属性或者其他方法实现
ForApply
2002-03-04 06:25:14
有否办法禁止窗口响应CTRL+F4,当然是CMDIChildWnd,不能在里面控制,需要通过修改其属性或者其他方法实现
...全文
64
5
打赏
收藏
有否办法禁止窗口响应CTRL+F4,当然是CMDIChildWnd,不能在里面控制,需要通过修改其属性或者其他方法实现
有否办法禁止窗口响应CTRL+F4,当然是CMDIChildWnd,不能在里面控制,需要通过修改其属性或者其他方法实现
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ForApply
2002-03-05
打赏
举报
回复
仅能在app中间控制
不能在mainframe,因为他得不到
还有最后这个将执行OnSysCommand
但是键盘消息并没有转换成WM_SYSCOMMAND
好象是直接调用的(OnSysCommand是window基类中定义的消息映射)
yj_3000
2002-03-05
打赏
举报
回复
用SPY++跟踪程序在按ALT+F4后收到的一个消息,好像是SY什么的
在MainFrame里响应她,然后什么也不作,这样可以的,我在对话框程序理成功过
ForApply
2002-03-04
打赏
举报
回复
我用hook键盘当然是可以呀,除了这个方法外也可以截获CWinApp的keydown和keyup,但是这种方法实现起来是非常不自然的,使得程序相关性非常强,所以我不准备用,我是想知道有没有办法直接控制窗口的属性,以达到禁止的目的,静态的方法比较好,就是在创建窗口后限制部分的特性。而不用截获。
btw:ctrl+F4是关闭视图用的,准确的来说接收WM_LBUTTONUP和WM_LBUTTONDOWN消息的是直接发送到激活的视图,然后调用childframe的WM_SYSCOMMAND
fireseed
2002-03-04
打赏
举报
回复
方法如下:
先创建一个DLL,添加下面的代码
extern "C" __declspec(dllexport) LRESULT KeyboardProc(int code,WPARAM wParam,LPARAM lParam)
{
if((wParam==VK_F4) && (( lParam | 0x20000000 ) == lParam))
return 1;
return 0;
}
再在你的CWinApp的InitInstance()函数中添加:
HHOOK hook;
HMODULE hmod;
HOOKPROC pFunc;
hmod=::LoadLibrary("刚作的DLL全路径");
pFunc=(HOOKPROC)::GetProcAddress(hmod,"KeyboardProc");
hook=(HHOOK)SetWindowsHookEx(WH_KEYBOARD,pFunc,hmod,0);
FreeLibrary(hmod);
最后别忘了在CWinApp的析构函数中添
UnhookWindowsHookEx(hook);
好了,你的要求达到了!快给分吧
fireseed
2002-03-04
打赏
举报
回复
CTRL+F4是什么呀?是Alt+F4吧?
试试键盘钩子
通过MFC
实现
全屏功能(全屏及还原)
在MFC程序中,我们通常会继承CWnd或其派生类(如CFrameWnd、
CMD
IChildWnd
等)来创建自定义
窗口
。在这个过程中,我们将关注CWnd类的成员函数,它们可以帮助我们
控制
窗口
的状态。 1. **全屏模式
实现
**: - 使用`CWnd...
如何
实现
图片
窗口
要
实现
图片
窗口
,我们通常会继承CWnd或其子类,如CFrameWnd或
CMD
IChildWnd
,然后添加显示图片的功能。 步骤1:创建MFC应用程序项目 在Visual Studio中,选择“新建项目”,然后选择“MFC应用程序”。填写项目名称和...
MDI树形
控制
多个子
窗口
视图
本示例中的
实现
方式是通过树形控件来
控制
这些子
窗口
视图。树形控件是一种常见的GUI组件,它以层次结构显示项目,通常用于文件系统、目录结构或者组织结构的导航。在这个MDI程序中,树形控件起到了菜单或者导航栏的...
vc 各种
窗口
类型
实现
源代码
在VC++编程环境中,"各种
窗口
类型
实现
源代码"涵盖了创建和管理不同类型的Windows
窗口
的实践知识。VC++,全称Visual C++,是Microsoft公司推出的一种集成开发环境,广泛用于编写Windows应用程序,特别是MFC...
基于MFC和OpenGL的多文档分割
窗口
的
实现
在
实现
多文档分割
窗口
时,我们将创建一个水平或垂直分割的
窗口
布局。这种布局可以分为两部分:左侧通常用于显示
控制
或设置的对话框,右侧用于展示OpenGL渲染的结果。我们可以使用MFC的`CSplitterWnd`类来创建这个...
非技术类
1,660
社区成员
58,948
社区内容
发帖
与我相关
我的任务
非技术类
VC/MFC 非技术类
复制链接
扫一扫
分享
社区描述
VC/MFC 非技术类
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章