2008-08-27 107 views
2

是否有指定的Qt孩子的初始窗口位置的方法吗?Qt的子窗口位置

我有Linux和Windows上运行的应用程序,它看起来像的Qt的默认行为,让窗口管理器确定的子窗口的位置。

在Windows上,这是在屏幕的中央父是这似乎是合理的。

在Linux上,在GNOME(Metacity的),它总是在上左上角是烦人。我无法找到任何允许我控制窗口放置的metacity的窗口管理器首选项,所以我想重写该行为。

回答

3

Qt Widget Geometry

呼叫移动子窗口中的(X,Y)方法前戏()。 x和y的默认值是0,所以这就是它出现在左上角的原因。
您也可以使用父窗口的位置来计算孩子的相对位置。

0

一般情况下,我建议你不逼窗口位置,除非你的应用有一些非常特殊的窗口的要求。窗口经理的工作是确定新窗口放在哪里,而且大部分都做得很好。如果MetaCity没有选择好位置,那就是它的问题。

如果你做你自己的窗口位置可能会得到一个更好的结果,那么什么是贫穷的窗口管理器会给,但你也错过了在更高级的窗口管理器提供的智能窗口布局算法。