现在的位置: 首页 > 综合 > 正文

VC中模态窗口启动就隐藏界面的实现

2018年07月14日 ⁄ 综合 ⁄ 共 705字 ⁄ 字号 评论关闭
1、在BOOL C***Dlg::OnInitDialog()中添加如下代码

BOOL C***Dlg::OnInitDialog()
{
  ...//MFC 默认生成的代码

 // TODO: Add extra initialization here
 //修改属性,不显示在任务栏上
 this->ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW);

 return TRUE;  // return TRUE  unless you set the focus to a control
}

2、响应WM_NCPAINT消息,并在消息处理函数中添加如下代码。
//实现第一次启动应用程序时候,隐藏窗口
void  C***Dlg::OnNcPaint()
{
 static int i = 1;
 if(i > 0)
 {
  --i;
  ShowWindow(SW_HIDE);
 }
 else
 {
  CDialog::OnNcPaint();
 }
}

注:还有一种方法也可是实现隐藏,思路如下:
1、同上所示,在OnInitDialog中实现任务栏的隐藏,同时设置窗口的大小,并保持原窗口大小
//修改属性,不显示在任务栏上
 this->ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW);
 //::SetWindowPos(this->GetSafeHwnd(), HWND_BOTTOM, 0, 0, 0, 0, SWP_HIDEWINDOW);
2、在显示窗口的时候再根据保存的窗口大小显示窗口。

转载:http://blog.sina.com.cn/s/blog_6fbef9e00100mw1y.html

抱歉!评论已关闭.