控件如何实现窗口最大化

ddgfei 2007-07-06 04:09:01
新开发一个界面控件,双击可以实现全屏,不知道那位仁兄有过经历?
希望给点提示,谢谢
...全文
261 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Avoid 2007-07-13
  • 打赏
  • 举报
回复
MoveWindow
ddgfei 2007-07-13
  • 打赏
  • 举报
回复
以上方法都不能实现,我用的是控件 OnSize 只能最大化到Container
zhulei5 2007-07-09
  • 打赏
  • 举报
回复
mark
CathySun118 2007-07-08
  • 打赏
  • 举报
回复
楼上的方法不错
Avoid 2007-07-06
  • 打赏
  • 举报
回复
static bool isfull=true;
static CRect m_OldWndRect;
static CMenu m_OrgMenu;
//////////////////////////////////////

void CTestSoc2Dlg::OnButton1()
{
if(isfull==true)
{
GetWindowRect(&m_OldWndRect);//得到原窗口位置
//隐藏标题栏
LONG style=::GetWindowLong(m_hWnd,GWL_STYLE);
style&=~WS_CAPTION;
::SetWindowLong(m_hWnd,GWL_STYLE,style);
//窗体最前

::SetWindowPos(m_hWnd,HWND_TOPMOST,-1,-1,-1,-1,SWP_NOMOVE|SWP_NOSIZE);
//全屏
ShowWindow(SW_SHOWMAXIMIZED);
CenterWindow();

//this->RedrawWindow();
isfull=false;
}
else
{
//显示标题栏
LONG style=::GetWindowLong(m_hWnd,GWL_STYLE);
style|=WS_CAPTION;
::SetWindowLong(m_hWnd,GWL_STYLE,style);
//取消窗体最前
::SetWindowPos(m_hWnd,HWND_NOTOPMOST,m_OldWndRect.left,m_OldWndRect.top, m_OldWndRect.right-m_OldWndRect.left,m_OldWndRect.bottom-m_OldWndRect.top,SWP_SHOWWINDOW);
//恢复
ShowWindow(SW_SHOWNOACTIVATE);
//this->RedrawWindow();
isfull=true;
}
}

syy64 2007-07-06
  • 打赏
  • 举报
回复
在控件中作一个OnSize事件。
enderqs 2007-07-06
  • 打赏
  • 举报
回复
全屏?是实现一个新的窗口么
ddgfei 2007-07-06
  • 打赏
  • 举报
回复
没有人做过么?

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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