一般初学者会简单的认为在初始化对话框中ShowWindow(SW_HIDE);不就可以了吗?但其实那样是不行的,因为MFC中对话框的初始化显示其实很复杂,并不像SDK中的ShowWindow那么简单。下面介绍几种方法来达到运行后立刻隐藏。
1.使用MoveWindow
//在初始化对话框中使用
MoveWindow(0, 0, 0, 0);
注意:这个把对话框变没了,所以你点击任务栏程序图标的时候是不会有对话框出来的.
2.使用定时器
//在初始化对话框中使用
SetTimer(0, 1, NULL);//运行后1ms就隐藏,连任务栏上的 图标都没有了
......
//在定时器函数中写如下代码
ShowWindow(SW_HIDE);
KillTimer(0);
3.WINDOWPLACEMENT 窗口状态声明结构体
//在初始化对话框中写如下代码
WINDOWPLACEMENT wpf = { 0 };
wpf.length = sizeof(WINDOWPLACEMENT);//这个必须要写,否则SetWindowPlacement会失败
wpf.showCmd = SW_HIDE;//窗口状态为隐藏
SetWindowPlacement(&wpf);//设置窗口状态