MFC隐藏你的窗体?
MFC怎么隐藏你的窗体呢?简单,重载OnWindowPosChanging:void CdebugDlg::OnWindowPosChanging(WINDOWPOS* lpwndpos){
CDialogEx::OnWindowPosChanging(lpwndpos);
lpwndpos->flags &= ~SWP_SHOWWINDOW;//不显示窗口
}
:
嗯,但任务栏上应该没隐藏吧!!
为什么在WindowPosChanging消息响应函数里隐藏呢?也可以在WinApp的InitInstance里窗口初始化后直接隐藏! 本帖最后由 gxm771208 于 2015-11-26 14:07 编辑
或在OnInitDialog里隐藏,看是模式对话框还是非模式对话框 一般如果不要求在任务栏上也隐藏的话,只在OnInitDialog里加入ShowWindow(SW_HIDE)就可以了 InitInstance或OnInitDialog里加入ShowWindow(SW_HIDE)是无效的,InitInstance创建窗体,OnInitDialog创建控件,完毕之后还会调用RunModalLoop,对话框的消息循环。只要你的对话框里有WS_VISIBLE属性,在此消息循环中就会显示窗体 为啥在OnInitDialog里加这段代码行呢?
WINDOWPLACEMENT wp;
wp.length=sizeof(WINDOWPLACEMENT);
wp.flags=WPF_RESTORETOMAXIMIZED;
wp.showCmd=SW_HIDE;
SetWindowPlacement(&wp);
求答案!!! 非模态对话框直接的创建后调用ShowWindow(SW_HIDE)就可以了 Xiaoxue 发表于 2015-12-23 21:07
为啥在OnInitDialog里加这段代码行呢?
求答案!!!
加入代码后效果见图,这也叫隐藏窗体?
页:
[1]