首頁>技術>

Python GUI程式設計:高畫質電影線上觀看平臺製作,全網電影免費看

https://www.bilibili.com/video/BV1tz4y1o7Yc/

案例:

利用列表的形式設計一個使用者選擇介面

工具:

pythonPyQt5程式執行結果如下:

(1)初始介面

(2)選擇選單項

(3)選擇多重時

設計程式如下:
from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_MainWindow(object):    def setupUi(self, MainWindow):        MainWindow.setObjectName("MainWindow")        MainWindow.resize(300, 300)        self.centralwidget = QtWidgets.QWidget(MainWindow)        self.centralwidget.setObjectName("centralwidget")        self.listWidget = QtWidgets.QListWidget(self.centralwidget)        self.listWidget.setGeometry(QtCore.QRect(20, 10, 260, 260))        self.listWidget.setObjectName("listWidget")        MainWindow.setCentralWidget(self.centralwidget)        self.menubar = QtWidgets.QMenuBar(MainWindow)        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 26))        self.menubar.setObjectName("menubar")        MainWindow.setMenuBar(self.menubar)        self.statusbar = QtWidgets.QStatusBar(MainWindow)        self.statusbar.setObjectName("statusbar")        MainWindow.setStatusBar(self.statusbar)        self.retranslateUi(MainWindow)        QtCore.QMetaObject.connectSlotsByName(MainWindow)        # 設定列表可以多選        self.listWidget.setSelectionMode(QtWidgets.QAbstractItemView.MultiSelection)        # 設定選中方式為整行選中        self.listWidget.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)        # 設定以列表形式顯示資料        self.listWidget.setViewMode(QtWidgets.QListView.ListMode)        self.listWidget.setWordWrap(True)        from collections import OrderedDict # 設定自動換行        # 定義有序字典,作為List列表的資料來源        dict = OrderedDict({'蒸羊羔': '998元/份',                            '蒸熊掌': '998元/份',                            '蒸鹿尾兒': '998元/份',                            '燒花鴨': '288/份',                            '燒雛雞': '288/份',                            '燒子鵝': '288元/份',                            '滷豬': '688元/份',                            '滷鴨': '188元/份',                            '醬雞臘肉': '188元/份'})        for key, value in dict.items():  # 遍歷字典,並分別獲取到鍵值            self.item = QtWidgets.QListWidgetItem(self.listWidget)  # 建立列表項            self.item.setText(key+': '+value)  # 設定項文字            self.item.setToolTip(value)  #  設定提示文字        self.listWidget.itemClicked.connect(self.gettext)    def gettext(self,item):    # 自定義槽函式,獲取列表選中項的值        if item.isSelected():  # 判斷項是否選中            from PyQt5.QtWidgets import QMessageBox            QMessageBox.information(MainWindow,"提示","您選擇的是:"+item.text(),QMessageBox.Ok)    def retranslateUi(self, MainWindow):        _translate = QtCore.QCoreApplication.translate        MainWindow.setWindowTitle(_translate("MainWindow", "點菜系統"))import sys# 主方法,程式從此處啟動PyQt設計的窗體if __name__ == '__main__':   app = QtWidgets.QApplication(sys.argv)   MainWindow = QtWidgets.QMainWindow() # 建立窗體物件   ui = Ui_MainWindow() # 建立PyQt設計的窗體物件   ui.setupUi(MainWindow) # 呼叫PyQt窗體的方法對窗體物件進行初始化設定   MainWindow.show() # 顯示窗體   sys.exit(app.exec_()) # 程式關閉時退出程序

19
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 原始碼閱讀的方法、誤區以及三種境界