使用嵌入式QWinWidget调整Mfc对话框的大小

时间:2009-08-22 18:50:35

标签: qt qt-mfc-migration

我在qt中心论坛上问了我的问题,但还没有答案 希望有人会对此有所了解。

我在其中有一个带有QWinWidget的Mfc对话框。 当我调整对话框的大小时,我想要自动使用QWinWidget 重新调整大小并重新定位。这是在mfc对话框中创建QWinWidget的代码:

int MyCDialog::OnCreate(LPCREATESTRUCT lpCreateStruct)

{

if (CDialog::OnCreate( lpCreateStruct ) == -1 )
        return -1;
win=new QWinWidget( this->m_hWnd );
    MyFrame * dialog=new MyFrame(win);   
win->move(0,0);     
win->show(); 
return 0;

}

MyFrame派生自QFrame对象。生成QFrame对象 与Qt设计师。 QFrame已分配布局,假设对QFrame子窗口小部件进行几何管理。

以下是拖动对话框大小调整边框时执行的代码:

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

{

    QObjectList list=win->children();
    QFrame* p=(QFrame*) list.at(0);
    p->resize(QSize(cx,cy));

}

调整对话框大小时我从OnSize调用框架对象的resize方法, 在我调整框架后,我期待着 ,框架应根据调整大小并重新存放其子窗口小部件 他们的大小提示和规模政策。但至少没有发生这种情况 不是应该的。我做错了什么?

0 个答案:

没有答案