如何禁用MFC单文档主窗口的最大化按钮?

原创 2016年05月30日 23:55:42

解决方案

具体操作:
1.单击程序左下角的ClassView选项卡,在CMainFrame类中双击PreCreateWindow函数,该函数原型如下:

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
      if( !CFrameWnd::PreCreateWindow(cs) )
      return FALSE;
      // TODO: Modify the Window class or styles here by modifying
      // the CREATESTRUCT cs

      return TRUE;
}

2.只需向其中添加一句代码,即可。
cs.style &= ~WS_MAXIMIZEBOX ;// 设置样式,禁用最大化按钮
实现之后的代码:

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
  {
  if( !CFrameWnd::PreCreateWindow(cs) )
    return FALSE;
  // TODO: Modify the Window class or styles here by modifying
  //  the CREATESTRUCT cs
  // 调整主窗口的大小
  cs.cx=667;
  cs.cy=536;

  // 调整样式,禁用最大化
  cs.style &= ~WS_MAXIMIZEBOX;

  return TRUE;
  }

知识:
cs.style 就是窗口的风格,这个风格都是叫 WS_***

WS_CHILD // 子窗口
WS_MINIMIZE // 有最小化按扭
WS_VISIBLE // 可见
WS_MAXIMIZE // 有最大化按纽
WS_BORDER // 有边框

它们可以通过 | 符号组合

比如一个 可见的 有边框的窗口风格就是 WS_VISIBLE | WS_BORDER

要去掉某正风格 就 &~WM_*****

比如上面的去掉最大化按纽。
如果要去掉最大最小化按钮,可以这样:
cs.style &= ~WS_MAXIMIZEBOX;
cs.style &= ~WS_MINIMIZEBOX;

版权声明:本文为博主原创文章,未经博主允许不得转载。

MFC禁止窗口最大化按钮和禁止改变窗口大小

1.  修改PreCreateWindow()函数如下:   BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)   {   if(...

MFC禁用关闭按钮、最小化、最大化

禁用关闭按钮 BOOL TestResultText::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initi...

子窗口最大化后在父窗口中以TabControl中显示的问题

要实现子窗口最大化后在父窗口中以TabControl中显示的问题首先要实现子窗口中调用父窗口控件的问题 第一步:创建form1窗体,在窗体form1中添加一个menuScript控件和TabCont...

C++MFC程序窗口无法显示最大最小化按钮问题

MFC程序开发时,经常会出现没有最大和最小化按钮的问题,解决的办法是,在窗口文件右击-属性-System Menu,设置为true。...
  • gxy2001
  • gxy2001
  • 2016年12月12日 13:21
  • 448

MFC去掉窗口右上方最大化最小化关闭按钮

MFC去掉窗口右上方最大化最小化关闭按钮

MFC设置对话框默认最大化弹出

问:设置默认最大化显示: MFC模态对话框怎么默认最大化弹出? 添加模态对话框初始化函数, 在OnInitDialog()函数添加:在其中添加如下语句: ShowWindow(SW_MAXIM...

MFC对话框增加最大化和最小化按钮

1.在对话框上右键选择属性 2.切换到
  • yal179
  • yal179
  • 2014年05月30日 14:01
  • 3302

MFC单文档 关闭按钮屏蔽 最小化到托盘

 最近写一个软件,需要长期运行,所以要屏蔽掉它的关闭按钮,并且窗口大小是固定的要屏蔽掉最大化按钮。在点下关闭按钮时执行最小化到托盘区。做完后整理了一下。MFC维护着一个消息队列,每次取出一条消息进行处...

MFC 单文档窗口最大化显示

1、定位到APP文件中

两种方法实现MFC 对话框最大化时控件也随比例最大化或者还原

两种方法实现MFC 对话框最大化时控件也随比例最大化或者还原 方法一:单个控件ID操作 第一步、在对话框类中(.h文件)定义如下变量和函数 定义如下几个变量: void ReSize(in...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何禁用MFC单文档主窗口的最大化按钮?
举报原因:
原因补充:

(最多只允许输入30个字)