QT开发中文网

QMainWindow下两个QWidget 设置为central widget的不显示

在QMainWindow中,只能设置一个QWidget作为中心部件,因此如果您尝试将两个QWidget对象都设置为中心部件,则只有最后一个被设置的QWidget会显示在屏幕上。这是由于Qt框架的设计决定的。

如果您需要在QMainWindow中同时显示两个QWidget对象,则可以考虑使用布局管理器。通过将多个QWidget添加到布局管理器中,您可以轻松地控制它们之间的位置和大小,并使它们相互重叠或并列显示。以下是一个示例代码片段:

# 获取主窗口对象
main_window = QMainWindow()

# 创建两个 QWidget 对象
widget1 = QWidget()
widget2 = QWidget()

# 创建 QVBoxLayout 布局管理器,并将 widget1 和 widget2 添加到其中
layout = QVBoxLayout()
layout.addWidget(widget1)
layout.addWidget(widget2)

# 将 QVBoxLayout 设置为中心部件
central_widget = QWidget()
central_widget.setLayout(layout)
main_window.setCentralWidget(central_widget)

# 显示窗口
main_window.show()

在上面的代码片段中,我们首先创建了两个QWidget对象(widget1widget2),然后将它们添加到一个QVBoxLayout布局管理器中。接下来,我们将这个布局管理器设置为一个新的QWidget对象(central_widget) 的布局,并将其设置为主窗口(main_window)的中心部件。最后,我们调用show()方法来显示窗口。

注意,在上面的示例代码中,我们仅创建了一个中心部件,但是该中心部件包含了两个QWidget对象。因此,如果您需要在QMainWindow中同时显示多个QWidget对象,则应该考虑使用布局管理器来组织它们的位置和大小。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://qt.0voice.com/?id=1723

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?