在我相当复杂的应用程序中,我创建了几个QmainWindows,根据条件显示/隐藏。为了使他们的行为更具确定性,我想使用setPosition()
来设置他们的位置。正如我所设想的那样,问题在于QMainWindow不是从QWindow派生的。所以它没有setPosition()
。我的问题:如何设置QMainWindow的位置?
为什么QMainWindow不是从QWindow派生的? (只是我的好奇心)
如何设置QMainWindow的位置?
在我相当复杂的应用程序中,我创建了几个QmainWindows,根据条件显示/隐藏。为了使他们的行为更具确定性,我想使用setPosition()
来设置他们的位置。正如我所设想的那样,问题在于QMainWindow不是从QWindow派生的。所以它没有setPosition()
。我的问题:如何设置QMainWindow的位置?
为什么QMainWindow不是从QWindow派生的? (只是我的好奇心)
如何设置QMainWindow的位置?
(@Tarod和@AlexanderVX已经给在评论的答案,但在这里,他们再次)
QMainWindow的,为什么不从QWindow衍生?
主要是因为QMainWindow
早在QWindow
被发明之前就已存在。
QMainWindow
继承QWidget
。 QWidget
是灵活的;它可以成为顶级窗口,或者它可以成为更大窗口部件的一部分。这意味着你可以把QMainWindow
放在另一个小部件中(但你可能不想这么做)。
如何设置QMainWindow的位置?
您设置的任何其他QWidget
位置以同样的方式:http://doc.qt.io/qt-5/qwidget.html#pos-prop(QWidget::move()
)
为什么'移动(INT X,int y)对'不适合你? – Tarod
QWindow是一个相当新的类,它是本机和独立于平台的UI窗口之间的适配器。 QWidget历来是大多数Qt UI类的父类。事实上,QWindow还没有那么长时间。是的,QMainWindow派生自QWidget。 – AlexanderVX
@Tarod,因为我找到了setPosition():)。而且,因为我在展示()之前尝试设置它。谢谢,我在Qt历史上没有受过教育。 – katang