2024-09-28 01:23:04 发布
网友
我有一系列QListWidget,并在它们上面放置了标签。我不知道对齐标签的最佳方法是什么,这样标签就直接位于标题所对应的QListWidget之上,并且这种对齐方式适用于任何显示器大小。我目前使用的是添加了两个水平布局的垂直布局,第一个水平布局有标题标签,第二个有一系列QlistWidgets
这就是我目前拥有的:
这就是我想要的:
您必须使用QGridLayout:
from PySide2 import QtCore, QtGui, QtWidgets class Widget(QtWidgets.QWidget): def __init__(self, parent=None): super(Widget, self).__init__(parent) grid_layout = QtWidgets.QGridLayout(self) name_lw = QtWidgets.QListWidget() name_lw.addItems("Name1 Name2 Name3".split()) c_ver_lw = QtWidgets.QListWidget() c_ver_lw.addItems("1 1 6 1 1 1".split()) l_ver_lw = QtWidgets.QListWidget() l_ver_lw.addItems("2 6 6 6 2 2".split()) entity_name_lw = QtWidgets.QListWidget() entity_name_lw.addItems("Entity1 Entity2 Entity3".split()) path_lw = QtWidgets.QListWidget() path_lw.addItems("Path1 Path2 Path3".split()) titles = ("Name", "C-ver", "L-ver", "Entity Name", "Path") lws = (name_lw, c_ver_lw, l_ver_lw, entity_name_lw, path_lw) for i, (title, lw) in enumerate(zip(titles, lws)): label = QtWidgets.QLabel(title) grid_layout.addWidget(label, 0, i) grid_layout.addWidget(lw, 1, i) if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) w = Widget() w.show() sys.exit(app.exec_())
您必须使用QGridLayout:
相关问题 更多 >
编程相关推荐