窗口在初始化时的最大化问题

dmjh1025 2011-01-10 02:31:44
如题,建立一个单文档的应用程序,在初始化时实现最大化,如果调用ShowWindow(SW_SHOWMAXIMIZED),显示时窗口的最下方会被任务栏挡住,并且此时窗口也可以移动,请教一下,如何实现初始化后,窗口的显示是好比点击了右上角最大化按钮后的那种显示效果
...全文
350 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dmjh1025 2011-01-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 varding 的回复:]

自己处理最大化
http://topic.csdn.net/t/20050710/19/4135232.html
[/Quote]
cs.style = cs.style&~WS_MAXIMIZEBOX&~WS_MINIMIZEBOX;
使用这句话后在设置WS_MAXSIZEBOX就会出现全屏的显示,而不是最大化
已经基本上解决了,原因我想还是和标题栏的最大化消息有关,尝试自己处理一下最大化消息
向立天 2011-01-11
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dmjh1025 的回复:]
不好意思哈,我原先没有表述清楚,是在屏蔽掉了右上角的最大化按钮后,如果再调用ShowWindow(SW_SHOWMAXIMIZED)的话就会出现窗口铺满整个屏幕的效果,而不是最大化的效果,如果不屏蔽掉最大化按钮,就不会出现上述情况,现在还没有找出原因,有高手知道吗
[/Quote]是有这个问题
没有特别好的解决方案
不过我记得屏蔽最大化按钮不用屏蔽最大化消息
也就是可以设置WS_MAXSIZEBOX风格
tttk 2011-01-11
  • 打赏
  • 举报
回复
你是如何屏蔽了最大化按钮的?
varding 2011-01-11
  • 打赏
  • 举报
回复
自己处理最大化
http://topic.csdn.net/t/20050710/19/4135232.html
dmjh1025 2011-01-10
  • 打赏
  • 举报
回复
不好意思哈,我原先没有表述清楚,是在屏蔽掉了右上角的最大化按钮后,如果再调用ShowWindow(SW_SHOWMAXIMIZED)的话就会出现窗口铺满整个屏幕的效果,而不是最大化的效果,如果不屏蔽掉最大化按钮,就不会出现上述情况,现在还没有找出原因,有高手知道吗
gudufuyun 2011-01-10
  • 打赏
  • 举报
回复

在应用程序类(CxxAPP)的 InitInstance 函数中设定 m_nCmdShow的取值.
m_nCmdShow=SW_SHOWMAXIMIZED; //最大化
例:
BOOL CMyEditApp::InitInstance()
{
AfxEnableControlContainer();
m_nCmdShow=SW_SHOWMAXIMIZED; //最大化
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.

#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif

…………
}
dmjh1025 2011-01-10
  • 打赏
  • 举报
回复
很奇特,发现原来是因为我把最大化和最小化屏蔽掉后才会出现这种情况,如果不屏蔽最大化按钮,如上所做就能实现,什么原因造成的
Eleven 2011-01-10
  • 打赏
  • 举报
回复

// 主框架类中

PostMessage(WM_SYSCOMMAND, SC_MAXIMIZE, 0);

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧