QMainWindow的setLayout的问题】的更多相关文章

因为QMainWindow有自己的layout,所以需要一个QWidget,然后setCentralWidget,给这个QWidget调用setLayout http://stackoverflow.com/questions/5893280/adding-layout-in-qt-on-qmain-window-using-a-code…
初接触Qt,使用的教程是陆文周编写的<Qt5开发及实例>一书. 其中有关于QDockWidget.QStackedWidget这些类的介绍和使用实例. 要首先说明的是书上讲的非常的清楚,代码也附得非常明白,这本书还是非常值得看看的. 由于是初学,在新建工程的时候,我没有注意到基类的这个细节,没有按照教程上说的新建一个基于QDailog的类的项目,而是新建了一个基于QMainWindow的. 这就给我后面留下了一个问题,在使用布局的时候始终不起作用. 我先附上代码(Ps:代码没有问题,只是基类不…
Help on class QMainWindow in module PyQt5.QtWidgets: class QMainWindow(QWidget)  |  QMainWindow(parent: QWidget = None, flags: Union[Qt.WindowFlags, Qt.WindowType] = Qt.WindowFlags())  |    |  Method resolution order:  |      QMainWindow  |      QWid…
QMainWindow继承自QWidget,是一个顶层窗口,它可以包含其他的界面元素:菜单栏.工具栏.状态栏.子窗口等. QMainWindow不能设置布局(setLayout()方法),因为它有自己的布局: #!/usr/bin/python3 # -*- coding: utf-8 -*- import sys from PyQt5.QtWidgets import QMainWindow, QApplication if __name__ == '__main__': app = QApp…
#!/usr/bin/env python import sys from PyQt5.QtWidgets import (QApplication, QMainWindow, QWidget, QAction, QLabel, QTextEdit, QLineEdit, QPushButton, QGridLayout) from PyQt5.QtCore import Qt from PyQt5.QtGui import QIcon class MainWindow(QMainWindow)…
QMainWindow主窗口为用户提供一个应用程序框架,它有自己的布局,可以在布局中添加控件.比如将工具栏.菜单栏和状态栏等添加到布局管理器中. 窗口类型介绍 QMainWindow.QWidget和QDialog三个类都是用来创建窗口的. QMainWindow窗口可以包含菜单栏.工具栏.状态栏.标题栏等,是最常见的窗口形式. QWidget是对话框窗口的基类.对话框主要用来执行短期任务,或者与用户进行互动,它可以是模态的,也可以是非模态的. 如果是主窗口,就使用QMainWindow类:如果…
在pyqt5中使用了父类为QMainWindow的话,在里面使用布局类,QGridLayout, QHBoxLayout ,QVBoxLayout 时,发现不好用. 解决: 如果是在以QWidget为父类的自定义类中使用这三个布局类的话,是很好用的,但是在QMainWindow中使用的时候要多写几句话.具体如下所示: widget = QWidget() widget.setLayout(gridLayout) self.setCentralWidget(widget) 这几句话加在哪里呢?加在…
QLayout是Qt应用开发中一个非常重要的组件,然而平时使用的时候不小心经常会发现控制台有类似如下的警告: QWidget::setLayout: Attempting to set QLayout "" on xxx "", which already has a layout 网上关于这方面的解释一直比较混乱,而且是抄来抄去的,主要是集中在QMainWindow的问题.但是实际上,如果不注意的话,任意的QWidget上使用QLayout都会出现这个警告.其实原…
功能描述: 在QMainWindow下,使用多个QDockWidget构成可切换,可拖动,可关闭的标签页:标签页的切换由相关联的QAction触发. 实现效果: 代码如下: QDockWidget *sr=new QDockWidget(tr("Sr"),this); //设置为可拖动且可关闭 sr->setFeatures(QDockWidget::DockWidgetMovable|QDockWidget::DockWidgetClosable); sr->setAll…
继承关系:在Qt中所有的类都有一个共同的基类QObject ,QWidget直接继承与QPaintDevice类,QDialog.QMainWindow.QFrame直接继承QWidget 类.     QWidget类是所有用户界面对象的基类.窗口部件(QWidget)是用户界面的一个基本单元:它从窗口系统接收鼠标,键盘和其他事件,并且在屏幕上绘制自己.每个窗口部件都是矩形的,并且它们按Z轴顺时针排列.一个窗口部件可以把他的父窗口部件或者它前面的窗口部件盖住一部分.   QMainWindow…