怎么能让程序运行时不在任务栏显示图标? 怎么能让程序运行时不在任务栏显示图标?程序窗口在桌面上显示,且是当前活动窗口,但任务栏中不显示图标。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 让你的主窗口带上WS_EX_TOOLWINDOW风格 以SDI和MDI应用为例,你可以在CMainFrame中重载PreCreateWindow(),在其中加一句: cs.dwExStyle |= WS_EX_TOOLWINDOW; 对基于对话框的应用,稍微复杂一些:先在资源编辑器中,把对话框的属性(Extended Style中)设成“Tool Window”,然后在主对话框的OnInitDialog()中加入下面代码: DWORD Style = ::GetWindowLong(AfxGetMainWnd()->m_hWnd, GWL_EXSTYLE); Style = WS_EX_TOOLWINDOW ; AfxGetMainWnd()->ShowWindow(SW_HIDE); ::SetWindowLong(AfxGetMainWnd()->m_hWnd, GWL_EXSTYLE, Style); AfxGetMainWnd()->ShowWindow(SW_SHOW); 今天我也在想这个问题。后来在网页上和msdn中找到一种方法。先得到任务栏的句柄:hTabWnd = FindWindow("Shell_TrayWnd", 0);hTabWnd = FindWindowEx(hTabWnd, 0, "ReBarWindow32", NULL);hTabWnd = FindWindowEx(hTabWnd, 0, "MSTaskSwWClass", NULL);hTabWnd = FindWindowEx(hTabWnd, 0, "SysTabControl32", NULL);然后用TabCtrl_DeleteItem删除你想要删除的那个按钮(就是程序在任务栏中的那个)。不过我调用TabCtrl_GetItem时老是出现非法内存操作,哪位哥们给个方法? 在对话框中实现隐藏任务栏也很简单用文本方式打开资源文件,在对话框资源所在的地方把EXSTYLE WS_EX_APPWINDOW改成WS_EX_TOOLWINDOW保存就可以了 在对话框中实现隐藏任务栏也很简单用文本方式打开资源文件,在对话框资源所在的地方把EXSTYLE WS_EX_APPWINDOW改成WS_EX_TOOLWINDOW保存就可以了 对基于对话框的应用,稍微复杂一些:先在资源编辑器中,把对话框的属性(Extended Style中)设成“Tool Window”,然后在主对话框的OnInitDialog()中加入下面代码: DWORD Style = ::GetWindowLong(AfxGetMainWnd()->m_hWnd, GWL_EXSTYLE); Style = WS_EX_TOOLWINDOW ; AfxGetMainWnd()->ShowWindow(SW_HIDE); ::SetWindowLong(AfxGetMainWnd()->m_hWnd, GWL_EXSTYLE, Style); AfxGetMainWnd()->ShowWindow(SW_SHOW); 关于VC开发ActiveX控件教程 activex控件不能初始化 一个关于VC编译选项的奇怪问题(高分求解) 请教以下一段有什么用?请给出详细解答,不胜感激 1000¥求购IE插件源代码和相关资料 树型控件问题 初学线程的一个小问题! directshow问题 关于自动运行的问题?? 在单文档视图的工程中增加一个对话框后,如何在新增对话框的事件中调用文档类的数据? VC++的链接错误LNK2001(转) 哪里可以下到有关Visual C#.net的比较好的书籍?
cs.dwExStyle |= WS_EX_TOOLWINDOW;
先在资源编辑器中,把对话框的属性(Extended Style中)设成“Tool Window”,然后在主对话框的OnInitDialog()中加入下面代码:
DWORD Style = ::GetWindowLong(AfxGetMainWnd()->m_hWnd, GWL_EXSTYLE);
Style = WS_EX_TOOLWINDOW ;
AfxGetMainWnd()->ShowWindow(SW_HIDE);
::SetWindowLong(AfxGetMainWnd()->m_hWnd, GWL_EXSTYLE, Style);
AfxGetMainWnd()->ShowWindow(SW_SHOW);
先得到任务栏的句柄:
hTabWnd = FindWindow("Shell_TrayWnd", 0);
hTabWnd = FindWindowEx(hTabWnd, 0, "ReBarWindow32", NULL);
hTabWnd = FindWindowEx(hTabWnd, 0, "MSTaskSwWClass", NULL);
hTabWnd = FindWindowEx(hTabWnd, 0, "SysTabControl32", NULL);
然后用TabCtrl_DeleteItem删除你想要删除的那个按钮(就是程序在任务栏中的那个)。
不过我调用TabCtrl_GetItem时老是出现非法内存操作,哪位哥们给个方法?
用文本方式打开资源文件,在对话框资源所在的地方
把EXSTYLE WS_EX_APPWINDOW改成WS_EX_TOOLWINDOW
保存就可以了
用文本方式打开资源文件,在对话框资源所在的地方
把EXSTYLE WS_EX_APPWINDOW改成WS_EX_TOOLWINDOW
保存就可以了
先在资源编辑器中,把对话框的属性(Extended Style中)设成“Tool Window”,然后在主对话框的OnInitDialog()中加入下面代码:
DWORD Style = ::GetWindowLong(AfxGetMainWnd()->m_hWnd, GWL_EXSTYLE);
Style = WS_EX_TOOLWINDOW ;
AfxGetMainWnd()->ShowWindow(SW_HIDE);
::SetWindowLong(AfxGetMainWnd()->m_hWnd, GWL_EXSTYLE, Style);
AfxGetMainWnd()->ShowWindow(SW_SHOW);