2012-08-29 65 views

回答

18

show()只是一个方便的功能setVisible(true)

同样hide()相当于setVisible(false)

在内部,同样的代码被用于渲染你的看法。

http://doc.qt.io/archives/qt-4.7/qwidget.html#show为例。据此,

void QWidget :: show()[slot]显示控件及其子控件。 该函数等价于setVisible(true)。

你会发现很多这样的功能在Qt来只会让事情更直观,尤其是当它涉及到的部件和意见。

+4

这只是部分正确。虽然'hide()'与'setVisible(false)'是一样的,但show()不仅仅是设置可见性。根据窗口的默认状态,它将设置窗口状态(产生窗口状态改变通知),然后_then_调用'setVisible(true)'。 – Dan

6

没有区别。他们只是实现同样目标的不同方式。 (其实setShown并不是API的一部分,它看起来像是Qt 3的一个兼容的东西,所以最好不要使用它。)

相关问题