2010-05-26 151 views
1

我在CView中托管了一个QWinWidget,并希望它在调整大小时保留在指定位置。但QWinWidget总是移动到(0,0),即CView的左上角。QWinWidget的位置始终为0(零)

我想用这种方式来调试:

QWinWidget* pWidget = new QWinWidget(pCView); 
pWidget->move(50, 50); 
QPoint pos = pWidget->pos(); 

需要注意的是:在POS始终是(0,0)。

这是为什么?

回答

0

我相信你需要创建QWinWidget的孩子QWidget才能定位它。但是,我从来没有使用mfc-migration工具包。

+0

是的,有一个孩子的QWidget。移动子QWidget不会影响QWinWidget的位置。 我发现QWinWidget没有父QWidget,而QWidget.pos()是父窗口小部件坐标中的位置,所以它始终为零。 – 2010-05-27 01:34:35

0

您可能需要首先显示控件,然后移动:

pWidget->show(); 
pWidget->move(50, 50); 
+0

这也行不通。 – 2010-05-27 09:09:36