我做了个基于对话框的应用程序,对话框类CMainDlg,在该对话框上点击按钮ButtonA时会弹出对话框B,此过程是CMainDlg 执行ShowWindow(SW_HIDE);对话框B执行ShowWindow(SW_SHOW);
当主对话框显示时会在任务栏显示程序名,且会显示托盘图标,但是点击ButtonA后,任务栏上就不显示程序名了,而只有对话框B显示在桌面。并且,如果此时执行左下角的“显示桌面”,那么会将所有的应用程序收到任务栏,但此时我的这个应用程序名仍然不会显示在任务栏,只能通过双击托盘图标才能把对话框B显示出来。如果对话框B隐藏了,主对话框显示出来,那么在任务栏就会显示应用程序名了。
另外一个问题,如果执行左下角的“显示桌面”,将所有的应用程序收到任务栏后,在其他应用程序恢复桌面显示以前首先通过双击托盘图标将对话框B显示出来,但此时在桌面的其他位置再点击一下桌面,这是这个对话框B仍然会隐藏掉,桌面也不显示,任务栏也不显示。
为什么会出现这种情况?但是如果有其他应用程序仍然显示在桌面,此时虽然把该应用程序缩在任务栏,再在桌面其他位置点击一下,对话框B就不会隐藏。为什么再执行一次“显示桌面”,再双击我的应用程序的托盘图标显示出对话框B后,再在桌面其他地方点击一下,就会隐藏对话框B?请高手指点
当主对话框显示时会在任务栏显示程序名,且会显示托盘图标,但是点击ButtonA后,任务栏上就不显示程序名了,而只有对话框B显示在桌面。并且,如果此时执行左下角的“显示桌面”,那么会将所有的应用程序收到任务栏,但此时我的这个应用程序名仍然不会显示在任务栏,只能通过双击托盘图标才能把对话框B显示出来。如果对话框B隐藏了,主对话框显示出来,那么在任务栏就会显示应用程序名了。
另外一个问题,如果执行左下角的“显示桌面”,将所有的应用程序收到任务栏后,在其他应用程序恢复桌面显示以前首先通过双击托盘图标将对话框B显示出来,但此时在桌面的其他位置再点击一下桌面,这是这个对话框B仍然会隐藏掉,桌面也不显示,任务栏也不显示。
为什么会出现这种情况?但是如果有其他应用程序仍然显示在桌面,此时虽然把该应用程序缩在任务栏,再在桌面其他位置点击一下,对话框B就不会隐藏。为什么再执行一次“显示桌面”,再双击我的应用程序的托盘图标显示出对话框B后,再在桌面其他地方点击一下,就会隐藏对话框B?请高手指点
解决方案 »
- 响应广大CSDNer, 再次散分
- msdn上的一个例子、请达者帮忙参考下、怎么修改;
- winpcap pcap_sendpacket()发送的是IP数据包,还是MAC桢?
- 如何解决移动静态控件的闪烁问题
- 新手问题:关于全局变量(Global)和extern的问题!
- ★菜鸟请教各位关于这个如何调用??谢谢各位了,谢谢了!!!!!!!!!!!
- 算法的基础是不是要打的牢牢的,请教各位前辈。
- 程序自启动(不用注册表)?
- ODBC方式下,为何CRecordset删除SQL2000的表的记录总是出错!
- 谁知道warning LNK4089是怎么回事?
- DataGrid 更新时如何控制编辑框输入的内容
- 做两个稍有不同的Dialog,如何减少重复开发?给点意见
showintaskbar( HWND hwnd, int bshow )
{
HRESULT hr;
ITaskbarList* pTaskbarList; hr = CoCreateInstance( CLSID_TaskbarList, NULL, CLSCTX_INPROC_SERVER, IID_ITaskbarList, ( void** )&pTaskbarList ); pTaskbarList->HrInit( ); if( bshow )
{
pTaskbarList->AddTab( hwnd );
}
else
{
pTaskbarList->DeleteTab( hwnd );
} pTaskbarList->Release();
}