我在CView中託管了一個QWinWidget,並希望它在調整大小時保留在指定位置。但QWinWidget總是移動到(0,0),即CView的左上角。QWinWidget的位置始終爲0(零)
我想用這種方式來調試:
QWinWidget* pWidget = new QWinWidget(pCView);
pWidget->move(50, 50);
QPoint pos = pWidget->pos();
需要注意的是:在POS始終是(0,0)。
這是爲什麼?
我在CView中託管了一個QWinWidget,並希望它在調整大小時保留在指定位置。但QWinWidget總是移動到(0,0),即CView的左上角。QWinWidget的位置始終爲0(零)
我想用這種方式來調試:
QWinWidget* pWidget = new QWinWidget(pCView);
pWidget->move(50, 50);
QPoint pos = pWidget->pos();
需要注意的是:在POS始終是(0,0)。
這是爲什麼?
我相信你需要創建QWinWidget
的孩子QWidget
才能定位它。但是,我從來沒有使用mfc-migration工具包。
您可能需要首先顯示控件,然後移動:
pWidget->show();
pWidget->move(50, 50);
這也行不通。 – 2010-05-27 09:09:36
是的,有一個孩子的QWidget。移動子QWidget不會影響QWinWidget的位置。 我發現QWinWidget沒有父QWidget,而QWidget.pos()是父窗口小部件座標中的位置,所以它始終爲零。 – 2010-05-27 01:34:35