Python怎么制作一个简易的点菜系统

这篇文章主要介绍“Python怎么制作一个简易的点菜系统”,在日常操作中,相信很多人在Python怎么制作一个简易的点菜系统问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python怎么制作一个简易的点菜系统”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

案例:

利用列表的形式设计一个用户选择界面

工具:

  • python

  • PyQt5

程序运行结果如下:

(1)初始界面

(2)选择菜单项

Python怎么制作一个简易的点菜系统

(3)选择多重时

Python怎么制作一个简易的点菜系统

设计程序如下:

from PyQt5 import QtCore, QtGui, QtWidgets


class 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_()) # 程序关闭时退出进程

到此,关于“Python怎么制作一个简易的点菜系统”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!