关于托盘的2个问题,以前的帖子中没有解答的。 我的应用程序是基于对话框的,想放进系统托盘,现碰到2个问题:1:对话框最小化后任务栏还有程序图标,如何去掉?我只想让它显示在托盘中。2:点击托盘图标后,系统界面闪了一下,但没有显示出来? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1把对话框的扩展属性修改成为WS_EX_TOOLWINDOW。 [程序实现] 把对话框的属性设置成为toolwindow,然后在需要的地方执行本代码。 DWORD Style = ::GetWindowLong(AfxGetMainWnd()->m_hWnd,GWL_EXSTYLE); Style = WS_EX_TOOLWINDOW ; ::SetWindowLong(AfxGetMainWnd()->m_hWnd,GWL_EXSTYLE,Style); http://www.vckbase.com/document/finddoc.asp?keyword=%CD%D0%C5%CC在这里搜索“托盘”,又很多相关内容 http://www.vckbase.com/document/finddoc.asp?keyword=%CD%D0%C5%CC在这里搜索“托盘”,又很多相关内容 2:就是我点了一下图标,主窗口只在屏幕上闪了一下,但并没有显示出来。 我在响应左键时用了showwindow(sw_shownormal);但没有用。 不能将对话框的属性设为toolwindow,这样最小化按钮就没有了。 看你的代码是不是用了showwindow(sw_shownormal);之后又被给隐藏起来了,要不它怎么闪呢 to laiyiling(最熟悉的陌生人)1:我想保留最小化按钮,所以你的方法不行。2:在showwindow(sw_shownormal_之后,我没有再隐藏过窗口。继续求教 1:可在最小化时将窗口隐藏ShowWindow(SW_HIDE);2:ShowWindow(SW_SHOWNORMAL);SetForegroundWindow();BringWindowToTop(); 最小花时 ShowWindow(SW_MINIMIZE); // 有这个最笑话好看点 ShowWindow(SW_HIDE);点击托盘图标ShowWindow(SW_SHOW);ShoWindow(SW_SHOWNORMAL); 第二个问题用了 TonyWJ(◎◎!) 的方法已经解决了。再重复一下第一个问题:怎样才能让程序图标只显示在托盘中而不显示在任务栏中?我的程序是基于对话框的。目前已经试过改为toolwindow,但改了之后程序的最小化按钮消失了! 第一个问题也已经解决,是showwindow(sw_shownormal)放错了地方。第二个问题是这样解决的:ShowWindow(SW_SHOWNORMAL); SetForegroundWindow(); BringWindowToTop(); 怎么用VS2008进行UI界面设计 给个简单的案例 MFC 头文件相互包含问题 哪位大哥成功安装了VS2010的,求那个MSVCR100.DLL文件!!! 升到3个裤衩了,小散分一下 关于程序递归的问题? 使用shellexcute隐藏启动程序的闪屏! 有关函数参数的问题? 书籍转让(上海) TC中的random函数怎么不能在 vc中用阿 【API】如何动态调用API?CallWindowProc? 怎样更改目录的创建时间? 新手的问题:“y << 8 | x”是什么含义呀?
把对话框的扩展属性修改成为WS_EX_TOOLWINDOW。
[程序实现]
把对话框的属性设置成为toolwindow,然后在需要的地方执行本代码。
DWORD Style = ::GetWindowLong(AfxGetMainWnd()->m_hWnd,GWL_EXSTYLE);
Style = WS_EX_TOOLWINDOW ;
::SetWindowLong(AfxGetMainWnd()->m_hWnd,GWL_EXSTYLE,Style);
我在响应左键时用了showwindow(sw_shownormal);但没有用。
1:我想保留最小化按钮,所以你的方法不行。
2:在showwindow(sw_shownormal_之后,我没有再隐藏过窗口。
继续求教
2:
ShowWindow(SW_SHOWNORMAL);
SetForegroundWindow();
BringWindowToTop();
ShowWindow(SW_MINIMIZE); // 有这个最笑话好看点
ShowWindow(SW_HIDE);点击托盘图标
ShowWindow(SW_SHOW);
ShoWindow(SW_SHOWNORMAL);
再重复一下第一个问题:
怎样才能让程序图标只显示在托盘中而不显示在任务栏中?我的程序是基于对话框的。
目前已经试过改为toolwindow,但改了之后程序的最小化按钮消失了!
第二个问题是这样解决的:
ShowWindow(SW_SHOWNORMAL);
SetForegroundWindow();
BringWindowToTop();