社区
界面
帖子详情
怎样实现主窗口独占
zhangw_david
2008-07-24 03:32:11
各位大侠,如题,我想让我的程序运行起来之后,首先最大化显示,然后独占整个wingdows屏幕,用户不能切换到别的窗口去,不能点开始按钮,意思就是当我的程序运行后,是用户可以操作的唯一程序,直道用户点退出。
给分
...全文
160
11
打赏
收藏
怎样实现主窗口独占
各位大侠,如题,我想让我的程序运行起来之后,首先最大化显示,然后独占整个wingdows屏幕,用户不能切换到别的窗口去,不能点开始按钮,意思就是当我的程序运行后,是用户可以操作的唯一程序,直道用户点退出。 给分
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhangw_david
2008-07-30
打赏
举报
回复
感谢swankie,问题基本上解决了!
结贴如下:
1、在InitInstance()里在pMainFrame->UpdateWindow();这行之后添加如下:
::SetWindowPos(m_pMainWnd->m_hWnd,HWND_TOPMOST,0,0,0,0,
SWP_NOACTIVATE | SWP_NOSIZE | SWP_NOMOVE | SWP_SHOWWINDOW);
这样主窗口就top-most了。
2、下一步,去掉最大最小按钮,在CMainFrame::PreCreateWindow(CREATESTRUCT& cs)里:
cs.style = cs.style & ~(WS_MAXIMIZEBOX | WS_MINIMIZEBOX);
3、然后重载
//disable double click on no-client area, do nothing
void CMainFrame::OnNcLButtonDblClk( UINT nHitTest, CPoint point )
{
}
//disable drag-drop action on main frame
void CMainFrame::OnNcLButtonDown( UINT nHitTest, CPoint point )
{
if (nHitTest == HTCAPTION )
;
else
CFrameWnd::OnNcLButtonDown(nHitTest, point);
}
大功告成!
谢谢各位的帮助,让我受益匪浅!
我将自己的代码放在这里,希望对其他有类似问题的朋友有点帮助。
zhangw_david
2008-07-25
打赏
举报
回复
[Quote=引用 8 楼 wangjia184 的回复:]
哈哈 这个的最优解决方法不是窗口, 而是桌面!
你可以调用CreateDesktop创建一个桌面, 将这个进程在这个桌面上启动就可以了
其它任何东西, 包括那些时不时弹出的广告窗口都没了。。。。
[/Quote]
可否再说的清楚些,我很菜的: “将这个进程在这个桌面上启动就可以了”,生成了新桌面,如何在这个桌面上启动??
CodeProject-Jerry
2008-07-25
打赏
举报
回复
哈哈 这个的最优解决方法不是窗口, 而是桌面!
你可以调用CreateDesktop创建一个桌面, 将这个进程在这个桌面上启动就可以了
其它任何东西, 包括那些时不时弹出的广告窗口都没了。。。。
zhangw_david
2008-07-25
打赏
举报
回复
[Quote=引用 5 楼 swankie 的回复:]
::SetWindowPos(this->m_hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE ¦SWP_NOSIZE ¦SWP_NOMOVE ¦SWP_SHOWWINDOW);
将当前窗体设置为最前面的窗口。其他程序就看不见了,但是你要先让他全屏,而且没有可以最小化的按钮等,不响应win+D键等。
[/Quote]
如何让主窗口全屏呢?
zhangw_david
2008-07-25
打赏
举报
回复
[Quote=引用 3 楼 AliasKavin 的回复:]
游戏有全屏独占模式`~~~~
普通程序达到这个效果操作比较多`~~
[/Quote]
并非游戏的全屏模式,我的软件是一个测试软件,用于生产线,当软件启动后,操作员就只能操作这个测试软件,不能使用windows的其他资源,
alt+tab,win+D等都需要被禁止。
操作是比较多,还请各位大侠指点指点,一定涌泉加分!!
zhangw_david
2008-07-25
打赏
举报
回复
100分,如果哪位大大可以帮助小弟!!(第一次给分,不知道够不够,如果不够可以再加),谢谢啊
swankie
2008-07-24
打赏
举报
回复
::SetWindowPos(this->m_hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE|SWP_NOSIZE|SWP_NOMOVE|SWP_SHOWWINDOW);
将当前窗体设置为最前面的窗口。其他程序就看不见了,但是你要先让他全屏,而且没有可以最小化的按钮等,不响应win+D键等。
stivenjia
2008-07-24
打赏
举报
回复
也就是连tab+alt也需要禁止?以及ctrl+alt+del?
你究竟想怎么个独占法?类似病毒那种?
AliasKavin
2008-07-24
打赏
举报
回复
游戏有全屏独占模式`~~~~
普通程序达到这个效果操作比较多`~~
jieao111
2008-07-24
打赏
举报
回复
CreateWindow里的第三参数
caimps
2008-07-24
打赏
举报
回复
象游戏一样全屏
Pulsar快速上手
本课程系统讲解Apache Pulsar,从原理到使用最后到开发整个... Pulsar客户端开发:包括:
独占
Exclusive,灾备Failover,共享Shared,多
主
题Multiple-Topic 教学目标: 让学员可以快速掌握Pulsar,并能在生产环境使用
DIRECTX中
独占
模式与
窗口
模式的切换
最近在GAMEDEV上发现了这篇文章,觉得挺不错的,特此翻译过来,有不对的地方希望大家指正DIRECTX中
独占
模式与
窗口
模式的切换介绍让你的游戏能够在
独占
(全屏)模式与
窗口
模式下运行应该很简单,但想要让它合理且...
Qt
实现
遮罩
窗口
系统全屏锁定或应用程序界面锁定
Qt
实现
遮罩
窗口
系统全屏锁定或应用程序界面锁定
用 C#
实现
独占
音频设备降低其它程序的音量
本文介绍了如何使用 Windows API 中的 AccSetRunningUtilityState 函数
实现
音频闪避的功能。这个函数可以让辅助功能程序设置自己的音频闪避选项,从而影响系统对其他应用程序的音量控制。我们还给出了一个使用 C# ...
ogre1.7.2 鼠标
独占
问题(鼠标移出
窗口
)
相信很多OGRE的初学者被一个问题深深困扰,就是ogre调试
窗口
独占
鼠标,无法将鼠标移出
窗口
,去做其他操作。只能通过alt+tab,切来切去,不管对于实验调试,还是实战写游戏使用,都是一个相当糟糕的体验。下面我们...
界面
15,979
社区成员
115,897
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章