如何在任务栏隐藏最小化窗口的窗口

下次自动登录
现在的位置:
& 综合 & 正文
如何使对话框程序启动以及主窗口最小化时不在任务栏上显示
时下流行的许多软件,如QQ,迅雷等,启动主以及主窗口最小化时,不在任务栏上显示按钮,这是怎么做到的呢?首先说主窗口启动时不再任务栏上显示按钮的问题方法1,将主窗口的属性设置为WS_EX_TOOLWINDOW,MSDN给的解释是创建一个工具窗口,用作浮动工具栏。工具窗口拥有比正常窗口短一些的标题栏,并且标题栏的字体也要小一些,工具栏窗口不会在任务栏中出现,也不会在用户按下Alt+Tab进行窗口切换时显示出来
通过这种方法可以比较简单的实现这个功能,但是这种方法存在一定的缺陷,具体后面分析。方法2,创建一个隐形的窗口,然后将主窗口设置为隐形窗口的子窗口,注意:主窗口销毁后,将隐形窗口也销毁掉
方法1示例如下:
BOOL CXXXDlg::OnInitDialog(){
// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动 //
执行此操作 SetIcon(m_hIcon, TRUE);
// 设置大图标 SetIcon(m_hIcon, FALSE);
// 设置小图标
ModifyStyleEx(WS_EX_APPWINDOW,WS_EX_TOOLWINDOW); //这句话改变窗口的属性,也可以在窗口的创建int CXXXDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)或者预创建函数BOOL CXXXDlg::PreCreateWindow(CREATESTRUCT& cs)
中进行类似的处理
return TRUE;}
这个方法,比较简单,快捷,但是有个缺点,如果你的窗口是有标题栏的,那么你的窗口的标题栏以及标题栏上的字体比正常的要小一些。另外还有一个bug,这个bug在QQ2008中也存在(QQ2008主窗口就是这样的一个无标题的对话框,带有WS_EX_TOOLWINDOW属性),属于必现的bug(这个bug在QQ2009PreView版本中已经得到解决),重现方法如下:1,将QQ2008系统设置中的“主窗口保持前端显示”选项前面的勾去掉 2.打开IE或者其他窗口,然后最大化该窗口,为方便叙述,将其称为窗口A 3.将QQ2008主界面(窗口B)显示在窗口A上 4.打开任意一个聊天窗口(窗口C),将其拉到屏幕中不与窗口B相交的地方 5.最小化窗口C
期望结果: 窗口B依然保持在屏幕上显示 实际结果: 窗口B不见了(实际上是跑到窗口A后面去了)
方法2示例如下:
首先,将对话框资源文件中的对话框属性中的"EXSTYLE WS_EX_APPWINDOW"这句话去掉,(和ModifyStyleEx(WS_EX_APPWINDOW,0)一样的效果)然后,在你的CXXXApp类中定义一个CWnd类型的成员变量m_wndOwner在你的主程序入口处,CXXXApp::InitInstance中加入如下BOOL CXXXApp::InitInstance()//MFC应用程序框架的InitInstance函数,用于MFC程序启动执行必要的初始化{
if ( m_wndOwner.m_hWnd == NULL ) {
LPCTSTR pstrOwnerClass = AfxRegisterWndClass(0);
if ( !m_wndOwner.CreateEx(0, pstrOwnerClass, _T(""),
//创建一个隐藏的弹出样式的窗口
WS_POPUP, CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL, 0) )
return FALSE; }
CXXXDlg dlg(&m_wndOwner); m_pMainWnd = &
INT_PTR nResponse = dlg.DoModal(); if (nResponse == IDOK) {
// TODO: 在此放置处理何时用“确定”来关闭
//对话框的代码 } else if (nResponse == IDCANCEL) {
// TODO: 在此放置处理何时用“取消”来关闭
//对话框的代码 }
if (m_wndOwner.m_hWnd != NULL)
m_wndOwner.DestroyWindow();
// 由于对话框已关闭,所以将返回 FALSE 以便退出应用程序, // 而不是启动应用程序的消息泵。
return FALSE;}
接着你需要截获对话框的最小化事件和关闭事件,响应WM_SYSCOMMAND消息,在其中对SC_MINIMIZE以及SC_CLOSE事件进行处理,隐藏窗口,并在托盘区显示(托盘显示的例子很多,我就不加以说明了)
这样一切搞定了,你已经拥有了一个启动以及主窗口最小化时不在任务栏上显示的程序
&&&&推荐文章:
【上篇】【下篇】&&&&VC桌面操作(隐藏任务栏和桌面,最小化所有窗口等)
&VC桌面操作(隐藏任务栏和桌面,最小化所有窗口等)
隐藏任务栏和桌面,最小化所有窗口,复制程序到指定路径并开机自动重启,以及屏蔽一些能关闭程序的键,运行后要求输入密码否则300秒后关机等
若举报审核通过,可奖励20下载分
被举报人:
lujinhua89
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
您可能还需要
Q.为什么我点的下载下不了,但积分却被扣了
A. 由于下载人数众多,下载服务器做了并发的限制。若发现下载不了,请稍后再试,多次下载是不会重复扣分的。
Q.我的积分不多了,如何获取积分?
A. 获得积分,详细见。
完成任务获取积分。
论坛可用分兑换下载积分。
第一次绑定手机,将获得5个C币,C币可。
关注并绑定CSDNID,送10个下载分
下载资源意味着您已经同意遵守以下协议
资源的所有权益归上传用户所有
未经权益所有人同意,不得将资源中的内容挪作商业或盈利用途
CSDN下载频道仅提供交流平台,并不能对任何下载资源负责
下载资源中如有侵权或不适当内容,
本站不保证本站提供的资源的准确性,安全性和完整性,同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
开发技术下载排行
积分不够下载该资源
如何快速获得积分?
你下载资源过于频繁,请输入验证码
如何快速获得积分?
你已经下载过该资源,再次下载不需要扣除积分
VC桌面操作(隐藏任务栏和桌面,最小化所有窗口等)
所需积分:0
剩余积分:0
扫描微信二维码精彩活动、课程更新抢先知
VIP会员,免积分下载
会员到期时间:日
剩余下载次数:1000
VIP服务公告:电脑爱好者之家
您身边的电脑家园
QuickHider v2.12绿色破解版下载|快速隐藏窗口/任务栏图标小工具
是一款桌面窗口快速隐藏小工具,支持隐藏桌面窗口、托盘图标和其他文件,还可以隐藏桌面图标和任务栏。利用这个工具,你甚至可以把所有的窗口和托盘图标都隐藏,就算你开了再多的任务,桌面上看去也是干干净净的。软件支持设置开机启动并自动隐藏。
软件大小:390K
软件语言:简体中文
运行平台:All Windows
关键词:QuickHider破解版、QuickHider绿色版、QuickHider软件下载
QuickHider 2.12功能简介
隐藏窗口:一键隐藏桌面上任何程序的窗口
隐藏托盘图标:除了系统自带的托盘图标,其他任何程序的最小化图标都可隐藏
隐藏桌面图标:可以隐藏桌面上所有的图标和文件及文件夹
隐藏任务栏:一键隐藏电脑任务栏
解压密码:www.pc360.net如何通过代码使程序最小化到任务栏-c/c++-电脑编程网如何通过代码使程序最小化到任务栏作者:wesleyluo 和相关&&&你能够用下面三种方法之一来实现它。  方法一:发送一条Windows消息到主窗口的Handle属性或Application-Handle。这条消息就是WM_SYSCOMMAND,将wParam设为SC_MINIMIZE或SC_RESTORE。你可以调用SendMessageAPI函数来发送消息。
//设置WPARAM为SC_MINIMIZE来最小化窗口SendMessage(Application-Handle,WM_SYSCOMMAND,SC_MINIMIZE,0);//设置WPARAM为SC_RESTROE来恢复窗口SendMessage(Application-Handle,WM_SYSCOMMAND,SC_RESTORE,0);
  方法二:调用ShowWindowAPI函数。你必须传送Application对象句柄到ShowWindow函数。如果你传送给ShowWindow函数的句柄是主窗口,那么主窗口将最小化到桌面(desktop)而不是任务条(taskbar)。
//最小化:传送SW_MINIMIZE到ShowWindowShowWindow(Application-Handle,SW_MINIMIZE);//恢复:传送SW_RESTORE到ShowWindowShowWindow(Application-Handle,SW_RESTORE);
  方法三:调用Application对象的Minimize或Restore函数。
//调用Minimize最小化应用程序Application-Minimize();//调用Restore恢复应用程序Application-Restore();
  调用Application的方法较易用,但发送WM_SYSCOMMAND消息功能更强。另外,WM_SYSCOMMAND消息允许你最大化程序,改变光标为帮助光标,滚动程序,移动一个窗口,改变窗口大小,甚至模拟Alt-TAB切换到另一窗口。紧记,实现这些功能用API函数更好。尽管调用ShowWindow也能工作,你大概也不想用它来最小化或恢复程序。当隐藏的窗口被最小化时ShowWindow会引起最小化动画出现。这看上去稍微有点傻,因为动画是从程序主窗口的位置远离中心。相关资料:|||||||如何通过代码使程序最小化到任务栏来源网络,如有侵权请告知,即处理!编程Tags:                &                    您的举报已经提交成功,我们将尽快处理,谢谢!
1、有可能你的键盘进水,导致按键错乱,建议换个键盘试试。
2、如果换了键盘还不行,就说明你的电脑中毒了,导致按键错乱,建议杀毒
3、有可能改变了你的默认按键设置...
大家还关注
(window.slotbydup=window.slotbydup || []).push({
id: '2081942',
container: s,
size: '1000,60',
display: 'inlay-fix'

我要回帖

更多关于 隐藏任务栏最小化图标 的文章

 

随机推荐