四联光电智能照明论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4109|回复: 7
打印 上一主题 下一主题

MFC隐藏你的窗体?

[复制链接]
  • TA的每日心情
    郁闷
    2016-1-18 09:58
  • 7

    主题

    30

    帖子

    326

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    326
    跳转到指定楼层
    楼主
    发表于 2015-11-26 13:48:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    MFC怎么隐藏你的窗体呢?简单,重载OnWindowPosChanging:
    1. void CdebugDlg::OnWindowPosChanging(WINDOWPOS* lpwndpos)
    2. {
    3.         CDialogEx::OnWindowPosChanging(lpwndpos);
    4.         lpwndpos->flags &= ~SWP_SHOWWINDOW;  //不显示窗口
    5. }
    复制代码


  • TA的每日心情
    开心
    2018-12-28 16:25
  • 817

    主题

    1556

    帖子

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    14941
    沙发
    发表于 2015-11-26 13:57:42 | 只看该作者
    嗯,但任务栏上应该没隐藏吧!!
    为什么在WindowPosChanging消息响应函数里隐藏呢?也可以在WinApp的InitInstance里窗口初始化后直接隐藏!
  • TA的每日心情
    开心
    2022-6-10 09:59
  • 366

    主题

    741

    帖子

    9649

    积分

    超级版主

    Rank: 8Rank: 8

    积分
    9649
    板凳
    发表于 2015-11-26 14:02:07 | 只看该作者
    本帖最后由 gxm771208 于 2015-11-26 14:07 编辑

    或在OnInitDialog里隐藏,看是模式对话框还是非模式对话框
  • TA的每日心情
    开心
    2018-11-9 08:52
  • 241

    主题

    691

    帖子

    7652

    积分

    论坛元老

    Rank: 8Rank: 8

    积分
    7652
    地板
    发表于 2015-11-26 21:15:09 | 只看该作者
    一般如果不要求在任务栏上也隐藏的话,只在OnInitDialog里加入ShowWindow(SW_HIDE)就可以了
  • TA的每日心情
    郁闷
    2016-1-18 09:58
  • 7

    主题

    30

    帖子

    326

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    326
    5#
     楼主| 发表于 2015-12-23 13:44:30 | 只看该作者
    InitInstance或OnInitDialog里加入ShowWindow(SW_HIDE)是无效的,InitInstance创建窗体,OnInitDialog创建控件,完毕之后还会调用RunModalLoop,对话框的消息循环。只要你的对话框里有WS_VISIBLE属性,在此消息循环中就会显示窗体
  • TA的每日心情
    开心
    2018-7-4 09:08
  • 97

    主题

    392

    帖子

    6095

    积分

    论坛元老

    Rank: 8Rank: 8

    积分
    6095
    6#
    发表于 2015-12-23 21:07:09 | 只看该作者
    为啥在OnInitDialog里加这段代码行呢?
    1. WINDOWPLACEMENT wp;
    2. wp.length=sizeof(WINDOWPLACEMENT);
    3. wp.flags=WPF_RESTORETOMAXIMIZED;
    4. wp.showCmd=SW_HIDE;
    5. SetWindowPlacement(&wp);
    复制代码

    求答案!!!
  • TA的每日心情
    开心
    2018-7-4 09:27
  • 76

    主题

    369

    帖子

    6325

    积分

    论坛元老

    Rank: 8Rank: 8

    积分
    6325
    7#
    发表于 2015-12-23 21:22:48 | 只看该作者
    非模态对话框直接的创建后调用ShowWindow(SW_HIDE)就可以了
  • TA的每日心情
    郁闷
    2016-1-18 09:58
  • 7

    主题

    30

    帖子

    326

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    326
    8#
     楼主| 发表于 2015-12-25 14:53:16 | 只看该作者
    Xiaoxue 发表于 2015-12-23 21:07
    为啥在OnInitDialog里加这段代码行呢?

    求答案!!!

    加入代码后效果见图,这也叫隐藏窗体?

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|Silian Lighting+ ( 蜀ICP备14004521号-1 )

    GMT+8, 2024-4-20 22:13 , Processed in 1.062500 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表