程序的HIDE 与 SHOW

catac 2004-03-29 04:40:18
我在程序的InitInstance()事件里加入了
CReceiveDlg *dlg = new CReceiveDlg;
dlg->Create(IDD_RECEIVE_DIALOG);
dlg->ShowWindow(SW_MINIMIZE);
m_pMainWnd=dlg;
return TRUE;
可以把一程序隐藏起来,可是我用什么方法才能叫他再显示出来呢。
还是我用的方法不对呀。
...全文
87 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
catac 2004-03-30
  • 打赏
  • 举报
回复
再来看看呀
catac 2004-03-29
  • 打赏
  • 举报
回复
是这样,我要是一用SW_HIDE 他就会一直的隐藏下去,我想用热键来显示他可是我定义的键没反应,
是不是这么个过程
define XXXXXX WM_USER+100
在begin message_map下加上
ON_MESSAGE(WM_HOTKEY,OnHotKey)
再加入一个处理函数名为
OnHotKey(WPARAM wParam, LPARAM lParam)
还有在XXXDLG.H里加入
afx_msg void OnHotKey(WPARAM wParam,LPARAM lParam);
这样可以了吗,有没有不对的呀
对了还有一个就是在
OnInitDialog()函数中
用 RegisterHotKey(m_hWnd, WM_HOTKEY, MOD_ALT|MOD_CONTROL|MOD_SHIFT|MOD_WIN, 'E');
定意系统热键ctrl+alt+shift+e
是这样的吗。
aawolf 2004-03-29
  • 打赏
  • 举报
回复
你不是隐藏窗体,而是最小化了。
你应该用SW_HIDE隐藏,然后用SW_SHOW显示。
catac 2004-03-29
  • 打赏
  • 举报
回复
还有,我要是想叫他在系统托盘里,为什么看不到呀,用这种方法成吗
NOTIFYICONDATA m_tnid;
//HWND g_hwnd;//主窗体句柄
m_tnid.cbSize = sizeof(NOTIFYICONDATA);
m_tnid.hWnd = g_hwnd; //句柄
m_tnid.uFlags = NIF_MESSAGE|NIF_ICON|NIF_TIP;
m_tnid.uCallbackMessage = WM_NOTIFYICON; //回调消息号
m_tnid.uID = IDR_MAINFRAME; //图标ID
HICON hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
m_tnid.hIcon = hIcon;
::Shell_NotifyIcon(NIM_ADD, &m_tnid);
if(hIcon)
::DestroyIcon(hIcon);

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧