程序最小化到系统托盘了,但是怎么能一启动就最小化到系统托盘。 谢谢。我加到OnInitDialog函数里也行,应该加到哪里? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 上面写错了,我写到OnInitDialog函数里,不行。…… 程序启动的时候后,最小化显示可以吗?ShowWindow(SW_SHOWMINIMIZED);或者ShowWindow(SW_MINIMIZE); 其实,创建图标后将窗口Show hide就行了 看代码:void CMP3PlayerDlg::OnSysCommand(UINT nID, LPARAM lParam){ if ((nID & 0xFFF0) == IDM_ABOUTBOX) { CAboutDlg dlgAbout; dlgAbout.DoModal(); } else if(nID == SC_MINIMIZE) { ModifyStyleEx(0,WS_EX_TOOLWINDOW);//取消任务栏显示 ShowWindow(SW_HIDE);//隐藏 //上面两行代码可以根据情况看是否需要 AddIcon();//调用添加系统托盘的函数 } else { CDialog::OnSysCommand(nID, lParam); }} 要用非模式对话框才可以,用vc向导生成的对话框工程不行D,要自己改改 在App的InitInstance()中: CMainDlg *pDlg = new CMainDlg; m_pMainWnd = pDlg; pDlg->Create(IDD_MAINDLG, NULL); pDlg->ShowWindow(SW_MINIMIZE);CMainDlg 是主窗口类, IDD_MAINDLG是你的主窗口资源ID 上面最后一句应该是pDlg->ShowWindow(SW_HIDE); 其实这就是启动时隐藏窗体,具体方法有很多种,如1,在OnInitDialog() 中加SetWindowsPos,将其坐标移到屏幕外2,在OnPaint中添加ShowWindow(SW_HIDE),但有点闪硕。3,拦截消息,egLRESULT CMyDlg::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam) {if(message==133) ShowWindow(SW_HIDE);return CDialog::DefWindowProc(message, wParam, lParam);}4,使用无模式对话框(这也是我认为最好的一种),并将对话框属性Visible不勾,这样启动就隐藏了 定时器在OnInitDialog() 定时 恒亿采集卡sdk二次开发,MP4Sys_InitDsps()初始化失败 [求助]请问怎么让浮点型以最简格式输出? 对于软件开发过程,操作手册应该在什么情况下写?什么时候? vc++6.0退出程序??? 求助:有关控制控件大小问题! 怎么用程序得到U盘的序列号?(是硬件序列号,不是卷号,急,顶者有分,谁回答出来再另开贴给分) 关于一个数据结构问题 ※救火!※在线等待! 如何直接使用CDatabase,CRecordset查询数据库? 在向高人们请教一个关于ListControl的问题 如果只想一个CEdit控件单独刷新怎么做呀?? 如何实现一个vc那样的界面
……
void CMP3PlayerDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else if(nID == SC_MINIMIZE)
{
ModifyStyleEx(0,WS_EX_TOOLWINDOW);//取消任务栏显示
ShowWindow(SW_HIDE);//隐藏
//上面两行代码可以根据情况看是否需要
AddIcon();//调用添加系统托盘的函数
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
用vc向导生成的对话框工程不行D,要自己改改
CMainDlg *pDlg = new CMainDlg;
m_pMainWnd = pDlg;
pDlg->Create(IDD_MAINDLG, NULL);
pDlg->ShowWindow(SW_MINIMIZE);
CMainDlg 是主窗口类, IDD_MAINDLG是你的主窗口资源ID
2,在OnPaint中添加ShowWindow(SW_HIDE),但有点闪硕。
3,拦截消息,eg
LRESULT CMyDlg::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
if(message==133)
ShowWindow(SW_HIDE);
return CDialog::DefWindowProc(message, wParam, lParam);
}4,使用无模式对话框(这也是我认为最好的一种),并将对话框属性Visible不勾,这样启动就隐藏了
在OnInitDialog() 定时