📜  PyQt5 QListWidget – 获取布局模式(1)

📅  最后修改于: 2023-12-03 14:45:49.173000             🧑  作者: Mango

PyQt5 QListWidget – 获取布局模式

PyQt5是为Python编写的一个基于Qt库的模块,它可用于创建图形用户界面(GUI)应用程序。QListWidget是PyQt5模块中的一个小部件(widget),它可用于显示带有项目的列表。在本指南中,我们将学习如何使用PyQt5 QListWidget获取布局模式。

QListWidget

在使用QListWidget之前,我们需要先在代码中导入PyQt5模块中的QListWidget类。

from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *

初始化QListWidget对象,并向其添加一些项目。

class Window(QWidget):
    def __init__(self):
        super().__init__()

        # setting geometry of window
        self.setGeometry(200, 200, 400, 300)

        # creating label
        self.label_1 = QLabel("Select an Item from List", self)
        self.label_1.setGeometry(50, 50, 250, 20)

        # creating a QListWidget
        list_widget = QListWidget(self)
        list_widget.setGeometry(50, 100, 250, 120)

        # creating QListWidgetItem
        item1 = QListWidgetItem("Item 1")
        item2 = QListWidgetItem("Item 2")
        item3 = QListWidgetItem("Item 3")

        # adding items to the list widget
        list_widget.addItem(item1)
        list_widget.addItem(item2)
        list_widget.addItem(item3)

# create pyqt5 app
App = QApplication(sys.argv)

# create the instance of our Window
window = Window()

# showing the window
window.show()

# start the event loop
sys.exit(App.exec())

在上述代码中,我们创建了一个窗口,并向窗口添加了一个带有三个元素的QListWidget。

获取布局模式

可以使用QListWidget对象的viewMode()方法获取当前Qt应用程序的列表视图模式。viewMode()方法返回QListView中的常量之一,这些常量表示在列表框架中显示的对象的布局。

list_widget.viewMode()

在以下代码片段中,我们通过QListWidget对象的viewMode()方法获取布局模式。布局模式可以是以下常量之一:

  • 0:在QListWidget中显示图标和文本。
  • 1:在QListWidget中只显示文本。
  • 2:在QListWidget中只显示图标。
class Window(QWidget):
    def __init__(self):
        super().__init__()

        # setting geometry of window
        self.setGeometry(200, 200, 400, 300)

        # creating label
        self.label_1 = QLabel("Select an Item from List", self)
        self.label_1.setGeometry(50, 50, 250, 20)

        # creating a QListWidget
        list_widget = QListWidget(self)
        list_widget.setGeometry(50, 100, 250, 120)

        # creating QListWidgetItem
        item1 = QListWidgetItem("Item 1")
        item2 = QListWidgetItem("Item 2")
        item3 = QListWidgetItem("Item 3")

        # adding items to the list widget
        list_widget.addItem(item1)
        list_widget.addItem(item2)
        list_widget.addItem(item3)

        # getting layout mode
        layout_mode = list_widget.viewMode()
        self.label_2 = QLabel("Layout Mode: " + str(layout_mode), self)
        self.label_2.setGeometry(50, 240, 250, 20)

在代码片段中,我们获取了QListWidget对象的布局模式,并通过QLabel在窗口上显示了布局模式。

总结

在本指南中,我们学习了如何使用PyQt5 QListWidget获取布局模式。使用QListWidget对象的viewMode()方法,我们可以获取当前Qt应用程序的列表视图模式。布局模式可以是以下常量之一:0、1或2。