精华内容
下载资源
问答
  • OnSize()

    千次阅读 2019-02-25 11:21:48
    afx_msg void OnSize( UINT nType, int cx, int cy ); 参数nType 指定请求的调整大小的类型。 此参数可以是下列值之一: SIZE_MAXIMIZED 窗口最大化。 SIZE_MINIMIZED 窗口最小化。 SIZE_RESTORED 窗口已调整大小,...

    在窗口的大小更改后,框架调用该成员函数
    afx_msg void OnSize(

    UINT nType,

    int cx,

    int cy

    );

    参数nType 指定请求的调整大小的类型。

    此参数可以是下列值之一:

    SIZE_MAXIMIZED 窗口最大化。

    SIZE_MINIMIZED 窗口最小化。

    SIZE_RESTORED 窗口已调整大小,但是,SIZE_MINIMIZED 和 SIZE_MAXIMIZED 不适用。

    在某些其他窗口最大化时,SIZE_MAXHIDE 发送到所有弹出窗口。

    在某些其他窗口将还原为其以前的大小时,SIZE_MAXSHOW 发送到所有弹出窗口。

    cx

    指定工作区的新的宽度。

    cy

    指定工作区的新的高度。

    备注 :

    如果 SetScrollPos 或 MoveWindow 成员函数用于从 OnSize的子窗口调用,SetScrollPos 或 MoveWindow 的 bRedraw 参数应为非零导致 CWnd 会重新绘制。

    说明 :

    此成员函数由框架调用提供您的应用程序处理Windows消息。

    当接收消息,参数传递给函数以反映结构接收的参数。

    如果调用此函数的基类实现, 该实现将使用参数最初用消息您提供给函数而非参数。

    原文:https://blog.csdn.net/lmhuanying1012/article/details/76360297
    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • OnSize函数

    千次阅读 2011-07-05 13:24:52
    OnSize函数的cx cy都是"当前对话框"的宽度和高度,并非是屏幕的
    OnSize函数的cx cy都是"当前对话框"的宽度和高度,并非是屏幕的
    
    展开全文
  • 对话框执行onsize消息时根据参数自动调整对话框上的控件大小和位置到合适位置,对话框执行onsize消息时根据参数自动调整对话框上的控件大小和位置到合适位置。
  • 函数onsize()与onsizing()区别

    千次阅读 2017-07-19 16:09:27
    OnSize是控件大小发生变化后发给你的消息,你可以得到控件将要变成多大(cx和cy指定),OnSizing是正在改变的大小,例如用户点击着鼠标拖放一个控件的大小,这个时候就收到OnSizing了它们都是CWnd类的成员函数. On...
    OnSize是控件大小发生变化后发给你的消息,你可以得到控件将要变成多大(cx和cy指定),OnSizing是正在改变的大小,例如用户点击着鼠标拖放一个控件的大小,这个时候就收到OnSizing了
    
    
    它们都是CWnd类的成员函数.
    OnSize()在窗口尺寸修改后被框架函数调用,函数原型是:
    afx_msg void OnSize(
       UINT nType,
       int cx,
       int cy 
    );
    参数nType取值为SIZE_MAXIMIZED等定义好的宏,cx,cy,为客户区新的宽度和高度.
    
    框架函数调用OnSizing()来指明用户正在恢复矩形到所要求的尺寸,函数原型为:
    afx_msg void OnSizing(
       UINT nSide,
       LPRECT lpRect 
    );
    参数nSide为窗口将要移动到的边缘,lpRect为矩形变量的指针.
    在窗口的大小更改后,框架调用该成员函数。
      
    afx_msg void OnSize(
       UINT nType,
       int cx,
       int cy 
    );
    
    参数
    nType

    指定请求的调整大小的类型。 此参数可以是下列值之一:

    • SIZE_MAXIMIZED 窗口最大化。

    • SIZE_MINIMIZED 窗口最小化。

    • SIZE_RESTORED 窗口已调整大小,但是,SIZE_MINIMIZED 和 SIZE_MAXIMIZED 不适用。

    • 在某些其他窗口最大化时,SIZE_MAXHIDE 发送到所有弹出窗口。

    • 在某些其他窗口将还原为其以前的大小时,SIZE_MAXSHOW 发送到所有弹出窗口。

    cx

    指定工作区的新的宽度。

    cy

    指定工作区的新的高度。

    备注

    如果 SetScrollPos 或 MoveWindow 成员函数用于从 OnSize的子窗口调用,SetScrollPos 或 MoveWindow 的 bRedraw 参数应为非零导致 CWnd 会重新绘制。

    
    
        
    
    
        
    
    
       
    展开全文
  • OnSize 改变控件的大小

    千次阅读 2014-06-10 21:24:31
    OnSize 函数   声明: afx_msg void OnSize(UINT nType,  int  cx,  int  cy); // 调整控件大小     // 调整控件大小   void CZTCServerDlg::OnSize(UINT nType, int cx, int cy...

    重载

    OnSize

    函数

     

    声明:

    afx_msg

    void

    OnSize(UINT nType, 

    int

     cx, 

    int

     cy);

    //

    调整控件大小

     

     

    //

    调整控件大小

     

    void CZTCServerDlg::OnSize(UINT nType, int cx, int cy) 

     

    CDialogEx::OnSize(nType, cx, cy); 

     

    CWnd 

     

     

    *pCtrl=this->GetWindow(GW_CHILD); 

     

     

    while(pCtrl&&nType!=1) //

    判断是否为空,

    因为对话框创建时会调用此函数,

    而当

    时控件还未创建

     

     

     

     

    CRectrect; 

     

     

    //

    获取控件变化前大小

     

     

     

    pCtrl->GetWindowRect(&rect); //

    得到主窗口的大小

     

     

     

    ScreenToClient(&rect);//

    将控件大小转换为在对话框中的区域坐标

     

     

     

    if (m_rect.Width() == 0) { 

     

     

     

    break; 

     

     

     

     

    rect.left=rect.left*cx/m_rect.Width();//

    调整控件大小

     

     

     

    rect.right=rect.right*cx/m_rect.Width(); 

     

     

    rect.top=rect.top*cy/m_rect.Height(); 

     

     

    rect.bottom=rect.bottom*cy/m_rect.Height(); 

     

     

    pCtrl->MoveWindow(rect);//

    设置控件大小

     

     

     

    pCtrl=pCtrl->GetNextWindow(); 

     

     

     

    GetClientRect(&m_rect);//

    将变化后的对话框大小设为旧大小

     

    }

    展开全文
  • 我重写onsize后获取的cx坐标会出问题,第一次打开窗口时获取的cx为1003,最小化后再还原获取的cx为998,这时为什么呢?
  • MFC OnSize事件调用时间

    千次阅读 2017-06-07 22:52:35
    在Ocx控件被加载时,第一次调用OnSize事件实在控件中的各个部件未加载前,此时如果操作控件中的控件会出现控制针异常,需要提前判断。 CTestDlg m_dlg; int CTestCtrl::OnCreate(LPCREATESTRUCT ...
  • MFC窗体消息之尺寸被改变 OnSize()

    千次阅读 2017-07-30 08:13:58
    afx_msg void OnSize(  UINT nType,   int cx,   int cy  ); 参数nType 指定请求的调整大小的类型。  此参数可以是下列值之一:   SIZE_MAXIMIZED 窗口最大化。   SIZE_MINIMIZED 窗口最小化。  SIZE_...
  • 请问MFC中既然写了OnSize,为什么还要写 MoveWindow 呢,两者的关系是怎样的,具体的案例写法怎么做?
  • MFC Onsize()函数的作用

    千次阅读 2016-09-19 10:53:36
     在OnSize()中,调用重绘函数,  再在OnPaint()中,进行窗口大小的调整 或 重定位。而未说明理由。 我经过尝试,再在OnPaint()中取出cx,cy值时,发现没有0,0的情况, 因此假想认为:  OnSize()在...
  • OnInitDialog与OnSize的执行顺序

    千次阅读 2012-11-14 14:30:43
    查了网上好多资料 都说对话框程序的执行顺序为:1.OnSize() 2.OnInitDialog() 但是今天在群里一哥们有个Demo 对话框程序的执行顺序为1.OnInitDialog() 2.OnSize() 拿到Demo后 经过再三研究 发现: 当窗口style = ...
  • MFC自绘窗口的时候,OnSize

    千次阅读 2016-01-17 16:12:18
    void CDialogEx::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType, cx, cy); //计算偏移 INT nYPos=1; INT nXPos=cx-nCloseWidth; //设置位置 m_rcButton[BST_CLOSE].SetRect(nXPos,
  • 是不是调用OnSize,MFC系统就会调用MoveWindow函数,而不需要再另外调用了呢?
  • MFC程序,在OnSize函数中怎么才能自动缩放MainFrame中的内容呢?写了半天没有思路,谢谢!
  • 消息OnSize的用法

    千次阅读 2008-06-21 23:04:00
    面板的控件随面板的大小,位置大小也可以变化。afx_msg void OnSize(UINT nType, int cx, int cy);void CstatusBar_MenuView::OnSize(UINT nType, int cx, int cy) { CFormView::OnSize(nType, cx, cy); if
  • 最近在学mfc, 模仿一个记事本。文本内容用编辑框来显示。 当窗口变化时,通过以下代码,可以实现编辑框随窗口一起变化。 需要注意的是在使用编辑框指针前,一定要加上判断。因为第一次OnSize() ...CDialog::OnSize
  • OnSize -> OnInitDialog -> OnPaint OnCreate:要创建一个窗口。 OnSize:用于窗口初始化前的一些参数设定。 OnInitDialog:初始化窗口,例如设置窗口字体、控件等。 OnPaint:在窗口上做一些...
  • VC在OnSize函数中可以根据当前窗口的大小,来改写窗口里面子控件的位置、大小。 但是注意,OnSize在窗口启动过程中,会多次被调用,所以,不能简单的在该函数中调用GetDlgItem()获取子控件的窗口指针。 最简单的...
  • 最近用到窗口变化的一些东西,遇到几个相关的消息函数...分别对应相应的处理函数:OnSize、OnSizing、OnGetMinMaxInfo。 当窗口大小发生变化时,响应的顺序依次是:WM_GETMINMAXINFO-->WM_SIZING-->WM_SIZE。  
  • 关于Onsize中控件句柄为空的问题

    千次阅读 2011-01-18 19:15:00
    我发现,在Onsize中,很多人喜欢在里面对控件进行重新的布局,但是在第一次Onsize时,控件并没有实际上初始化完成,也就是说,Onsize在OnInitDialog前发生,所以最好加个标记位,使控件在OnInitDialog再进行重新布局,...
  • void CChgWndDlg::OnSize(UINT nType, int cx, int cy) {  CDialog::OnSize(nType, cx, cy);  GetDlgItem(IDC_EDIT1)->MoveWindow(10,10,cx-20,cy-10); // 后面的那两个坐标要多减去10 }   注:要将窗
  • 最近用到窗口变化的一些东西,遇到几个相关的消息函数...分别对应相应的处理函数:OnSize、OnSizing、OnGetMinMaxInfo。 当窗口大小发生变化时,响应的顺序依次是:WM_GETMINMAXINFO-->WM_SIZING-->WM_SIZE。  
  • RT 我的项目把窗口进行分割,左边是的对话框可以控制右面是视图。窗口是通过CreateStatic进行分割,现在想从左边个类中添加这个语句PostMessage(pMain->m_hWnd,...但是CView中的OnSize函数执行不会执行,不知道怎么做?
  • BEGIN_MESSAGE_MAP(CLibraryDlg, CDialogEx)  ON_WM_SIZE() END_MESSAGE_MAP() ...void CLibraryDlg::OnSize(UINT nType, int cx, int cy) { if (!m_pTabCtrl) m_pTabCtrl = (CTabCtrl *)GetDlgItem(IDC_T
  • 1、OnCreate/OnSize/OnInitDialog哪个先执行?  下面是从MSDN上选的:  OnCreate:The framework calls this member function when an application requests that the windows windows be created by calling the...
  • 最近用到窗口变化的一些东西,遇到几个相关的消息函数,简要...分别对应相应的处理函数:OnSize、OnSizing、OnGetMinMaxInfo。 当窗口大小发生变化时,响应的顺序依次是:WM_GETMINMAXINFO-->WM_SIZING-->WM_SIZE。
  • BOOL dddd::OnInitDialog(){ // 代码区1 CDialog::OnInitDialog(); // 注:句1 // 代码区2} void dddd::OnSize(UINT nType, int cx, int cy){} 猜测:在程序调用的时候,OnInitDialog函数与OnSize()应该相

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,286,743
精华内容 514,697
关键字:

onsize