当前位置: 首页 > news >正文

网上网城网站潍坊品牌设计公司

网上网城网站,潍坊品牌设计公司,建设工程合同备案在什么网站上,公司电子商务网站建设策划书目录 一、引言 二、GUI界面设计 1.效果演示 2.相关提示 3.界面设计.py 三、主要程序详解 1.导入相关模块 2.初始化设置 3.组内判断 4.猜测过程 四、总程序代码 一、引言 在数字时代#xff0c;传统文化与编程语言的碰撞总能迸发奇妙火花。本项目以PyQtPython为技术…目录 一、引言 二、GUI界面设计 1.效果演示 2.相关提示 3.界面设计.py 三、主要程序详解 1.导入相关模块 2.初始化设置 3.组内判断 4.猜测过程 四、总程序代码 一、引言 在数字时代传统文化与编程语言的碰撞总能迸发奇妙火花。本项目以PyQtPython为技术载体将古老的十二生肖文化与二进制算法相结合打造一款互动占卜工具。用户通过图形化界面判断系统会将其自动转换为二进制代码并推算生肖。既是对数理思维的现代化诠释也是对PyQt事件驱动模型与Python数据处理能力的趣味实践。 二、GUI界面设计 使用PyQt5进行界面的搭建界面如下 初始界面搭建采用极简风格。用户通过四次选择在对应四个组别中分别判断是否存在自身属相从而给出四个存在与否的答案最终点击“猜”即可弹出计算机所预测的属相。 1.效果演示 以属猴为例第一组和第四组中均存在“猴”第二组和第三组中不存在“猴”则由第一组到第四组分别选择“存在”、“不存在”、“不存在”、“存在”最后程序通过这四次答案给出的结果同样是“猴”则猜测正确其他生肖同理。 但当未选择选项时或存在空白选项时会有“有空余选项未选择”的提示当均选择“存在”或“不存在”时当然也存在其他情况后面进行详细解释也会出现“请按照实际情况进行选择”的提示因为按照组别内容确实不满足条件肯定是用户有意选错。 2.相关提示 3.界面设计.py 通过pyuic5产生的GUI界面代码UI_shengxiao.py如下 # -*- coding: utf-8 -*-# Form implementation generated from reading ui file UI_shengxiao.ui # # Created by: PyQt5 UI code generator 5.15.11 # # WARNING: Any manual changes made to this file will be lost when pyuic5 is # run again. Do not edit this file unless you know what you are doing.from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_Form(object):def setupUi(self, Form):Form.setObjectName(Form)Form.setEnabled(True)Form.resize(600, 420)Form.setMinimumSize(QtCore.QSize(600, 420))Form.setMaximumSize(QtCore.QSize(600, 420))icon QtGui.QIcon()icon.addPixmap(QtGui.QPixmap(:/image1.png), QtGui.QIcon.Normal, QtGui.QIcon.Off)Form.setWindowIcon(icon)self.label_5 QtWidgets.QLabel(Form)self.label_5.setGeometry(QtCore.QRect(370, 10, 141, 31))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(16)self.label_5.setFont(font)self.label_5.setObjectName(label_5)self.label_8 QtWidgets.QLabel(Form)self.label_8.setGeometry(QtCore.QRect(190, 10, 131, 31))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(18)font.setBold(False)font.setWeight(50)self.label_8.setFont(font)self.label_8.setObjectName(label_8)self.label_10 QtWidgets.QLabel(Form)self.label_10.setGeometry(QtCore.QRect(450, 0, 71, 51))self.label_10.setText()self.label_10.setPixmap(QtGui.QPixmap(:/image1.png))self.label_10.setObjectName(label_10)self.label QtWidgets.QLabel(Form)self.label.setGeometry(QtCore.QRect(30, 80, 71, 31))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(16)self.label.setFont(font)self.label.setObjectName(label)self.label_3 QtWidgets.QLabel(Form)self.label_3.setGeometry(QtCore.QRect(140, 60, 351, 81))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(36)self.label_3.setFont(font)self.label_3.setFrameShadow(QtWidgets.QFrame.Sunken)self.label_3.setObjectName(label_3)self.label_2 QtWidgets.QLabel(Form)self.label_2.setGeometry(QtCore.QRect(30, 160, 71, 31))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(16)self.label_2.setFont(font)self.label_2.setObjectName(label_2)self.label_4 QtWidgets.QLabel(Form)self.label_4.setGeometry(QtCore.QRect(30, 240, 71, 31))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(16)self.label_4.setFont(font)self.label_4.setObjectName(label_4)self.label_6 QtWidgets.QLabel(Form)self.label_6.setGeometry(QtCore.QRect(30, 320, 71, 31))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(16)self.label_6.setFont(font)self.label_6.setObjectName(label_6)self.label_7 QtWidgets.QLabel(Form)self.label_7.setGeometry(QtCore.QRect(140, 140, 351, 81))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(36)self.label_7.setFont(font)self.label_7.setObjectName(label_7)self.label_9 QtWidgets.QLabel(Form)self.label_9.setGeometry(QtCore.QRect(140, 220, 351, 81))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(36)self.label_9.setFont(font)self.label_9.setObjectName(label_9)self.label_11 QtWidgets.QLabel(Form)self.label_11.setGeometry(QtCore.QRect(140, 300, 351, 81))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(36)self.label_11.setFont(font)self.label_11.setObjectName(label_11)self.label_12 QtWidgets.QLabel(Form)self.label_12.setGeometry(QtCore.QRect(20, 60, 481, 71))self.label_12.setFrameShape(QtWidgets.QFrame.StyledPanel)self.label_12.setText()self.label_12.setObjectName(label_12)self.label_13 QtWidgets.QLabel(Form)self.label_13.setGeometry(QtCore.QRect(20, 140, 481, 71))self.label_13.setFrameShape(QtWidgets.QFrame.StyledPanel)self.label_13.setText()self.label_13.setObjectName(label_13)self.label_14 QtWidgets.QLabel(Form)self.label_14.setGeometry(QtCore.QRect(20, 220, 481, 71))self.label_14.setFrameShape(QtWidgets.QFrame.StyledPanel)self.label_14.setText()self.label_14.setObjectName(label_14)self.label_15 QtWidgets.QLabel(Form)self.label_15.setGeometry(QtCore.QRect(20, 300, 481, 71))self.label_15.setFrameShape(QtWidgets.QFrame.StyledPanel)self.label_15.setText()self.label_15.setObjectName(label_15)self.pushButton QtWidgets.QPushButton(Form)self.pushButton.setGeometry(QtCore.QRect(140, 380, 331, 31))font QtGui.QFont()font.setFamily(Adobe Arabic)font.setPointSize(12)self.pushButton.setFont(font)self.pushButton.setObjectName(pushButton)self.radioButton QtWidgets.QRadioButton(Form)self.radioButton.setGeometry(QtCore.QRect(520, 80, 89, 16))self.radioButton.setAutoExclusive(True)self.radioButton.setObjectName(radioButton)self.radioButton_2 QtWidgets.QRadioButton(Form)self.radioButton_2.setGeometry(QtCore.QRect(520, 100, 89, 16))self.radioButton_2.setAutoExclusive(True)self.radioButton_2.setObjectName(radioButton_2)self.radioButton_3 QtWidgets.QRadioButton(Form)self.radioButton_3.setGeometry(QtCore.QRect(520, 160, 89, 16))self.radioButton_3.setAutoExclusive(True)self.radioButton_3.setObjectName(radioButton_3)self.radioButton_4 QtWidgets.QRadioButton(Form)self.radioButton_4.setGeometry(QtCore.QRect(520, 180, 89, 16))self.radioButton_4.setAutoExclusive(True)self.radioButton_4.setObjectName(radioButton_4)self.radioButton_5 QtWidgets.QRadioButton(Form)self.radioButton_5.setGeometry(QtCore.QRect(520, 240, 89, 16))self.radioButton_5.setAutoExclusive(True)self.radioButton_5.setObjectName(radioButton_5)self.radioButton_6 QtWidgets.QRadioButton(Form)self.radioButton_6.setGeometry(QtCore.QRect(520, 260, 89, 16))self.radioButton_6.setAutoExclusive(True)self.radioButton_6.setObjectName(radioButton_6)self.radioButton_7 QtWidgets.QRadioButton(Form)self.radioButton_7.setGeometry(QtCore.QRect(520, 320, 89, 16))self.radioButton_7.setAutoExclusive(True)self.radioButton_7.setObjectName(radioButton_7)self.radioButton_8 QtWidgets.QRadioButton(Form)self.radioButton_8.setGeometry(QtCore.QRect(520, 340, 89, 16))self.radioButton_8.setAutoExclusive(True)self.radioButton_8.setObjectName(radioButton_8)self.label_15.raise_()self.label_14.raise_()self.label_13.raise_()self.label_12.raise_()self.label_5.raise_()self.label_8.raise_()self.label_10.raise_()self.label.raise_()self.label_3.raise_()self.label_2.raise_()self.label_4.raise_()self.label_6.raise_()self.label_7.raise_()self.label_9.raise_()self.label_11.raise_()self.pushButton.raise_()self.radioButton.raise_()self.radioButton_2.raise_()self.radioButton_3.raise_()self.radioButton_4.raise_()self.radioButton_5.raise_()self.radioButton_6.raise_()self.radioButton_7.raise_()self.radioButton_8.raise_()self.retranslateUi(Form)QtCore.QMetaObject.connectSlotsByName(Form)def retranslateUi(self, Form):_translate QtCore.QCoreApplication.translateForm.setWindowTitle(_translate(Form, Cai_shengxiao))self.label_5.setText(_translate(Form, Designed By))self.label_8.setText(_translate(Form, 生肖猜猜看))self.label.setText(_translate(Form, 第一组))self.label_3.setText(_translate(Form, 狗 羊 猴 鸡 猪 狗))self.label_2.setText(_translate(Form, 第二组))self.label_4.setText(_translate(Form, 第三组))self.label_6.setText(_translate(Form, 第四组))self.label_7.setText(_translate(Form, 龙 蛇 兔 猪 马 龙))self.label_9.setText(_translate(Form, 牛 虎 狗 马 蛇 鸡))self.label_11.setText(_translate(Form, 马 狗 猴 虎 鼠 龙))self.pushButton.setText(_translate(Form, 猜))self.radioButton.setText(_translate(Form, 存在))self.radioButton_2.setText(_translate(Form, 不存在))self.radioButton_3.setText(_translate(Form, 存在))self.radioButton_4.setText(_translate(Form, 不存在))self.radioButton_5.setText(_translate(Form, 存在))self.radioButton_6.setText(_translate(Form, 不存在))self.radioButton_7.setText(_translate(Form, 存在))self.radioButton_8.setText(_translate(Form, 不存在)) import ziyuan_rc三、主要程序详解 1.导入相关模块 import sys from UI_shengxiao import * from PyQt5.QtWidgets import QApplication, QWidget, QButtonGroup# 保持窗口大小和qtdesigner中的一致 from PyQt5 import QtCore QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling) 导入前端页面设计文件UI_shengxiao.py不懂为啥需要导入Qtcore的请看一键曝光PythonPyQt实现的文件目录透视镜。 2.初始化设置 def __init__(self):super(QWidget, self).__init__()self.setupUi(self)self.radioButton.clicked.connect(self.yizu)self.radioButton_2.clicked.connect(self.yizu)self.radioButton_3.clicked.connect(self.erzu)self.radioButton_4.clicked.connect(self.erzu)self.radioButton_5.clicked.connect(self.sanzu)self.radioButton_6.clicked.connect(self.sanzu)self.radioButton_7.clicked.connect(self.sizu)self.radioButton_8.clicked.connect(self.sizu)self.pushButton.clicked.connect(self.cai)self.group1 QButtonGroup()self.group1.addButton(self.radioButton)self.group1.addButton(self.radioButton_2)self.group2 QButtonGroup()self.group2.addButton(self.radioButton_3)self.group2.addButton(self.radioButton_4)self.group3 QButtonGroup()self.group3.addButton(self.radioButton_5)self.group3.addButton(self.radioButton_6)self.group4 QButtonGroup()self.group4.addButton(self.radioButton_7)self.group4.addButton(self.radioButton_8)self.result_1 2self.result_2 2self.result_3 2self.result_4 2self.jieguo [0001, 0010, 0011, 0100, 0101, 0110, 0111, 1000, 1001, 1010, 1011, 1100]self.shengxiao [鼠, 牛, 虎, 兔, 龙, 蛇, 马, 羊, 猴, 鸡, 狗, 猪] 首先将radio button按组绑定于不同的函数因所有radio button在默认情况下是互斥的即只能单选不能显示多选效果所以建立button分组体系将8个radio button分为四组在每一组中的两两radio button均是互斥的可以单选接着定义4个变量结果的初始值为2不是0和1均可为后续方便操作这里使用str类型而不是int整型最后建立映射列表jieguo和shengxiao两者根据索引是一一对应的关系当然也可以使用字典。 3.组内判断 def yizu(self):if (self.radioButton.isChecked() True) and (self.radioButton_2.isChecked() False):self.result_1 1if (self.radioButton.isChecked() False) and (self.radioButton_2.isChecked() True):self.result_1 0def erzu(self):if (self.radioButton_3.isChecked() True) and (self.radioButton_4.isChecked() False):self.result_2 1if (self.radioButton_3.isChecked() False) and (self.radioButton_4.isChecked() True):self.result_2 0def sanzu(self):if (self.radioButton_5.isChecked() True) and (self.radioButton_6.isChecked() False):self.result_3 1if (self.radioButton_5.isChecked() False) and (self.radioButton_6.isChecked() True):self.result_3 0def sizu(self):if (self.radioButton_7.isChecked() True) and (self.radioButton_8.isChecked() False):self.result_4 1if (self.radioButton_7.isChecked() False) and (self.radioButton_8.isChecked() True):self.result_4 0 四个组判断结构一致对属于各自的两个radio button选择状态分别进行判断如果选择第一个radio button不选后一个radio button则为“存在”更新result值为“1”表示用户属相在对应组别中“存在”否则更新result值为“0”表示用户属相在对应组别中“不存在”。 4.猜测过程 def cai(self):if (self.result_1 2) or (self.result_2 2) or (self.result_1 3) or (self.result_4 2):QtWidgets.QMessageBox.critical(self, 提示, 有空余选项未选择)else:zongjieguo self.result_1self.result_2self.result_3self.result_4# print(zongjieguo)if zongjieguo in self.jieguo:shengxiao self.shengxiao[self.jieguo.index(zongjieguo)]QtWidgets.QMessageBox.information(self, 成功, 你的生肖是 shengxiao)else:QtWidgets.QMessageBox.critical(self, 提示, 请按照实际情况进行选择) result值一旦有一个为初始值2的话即证明用户未对某个组别进行判断选择因此提示用户“有空余选项未选择”否则将4个result值进行拼接得到4位二进制数只不过是用字符串形式表示因4位二进制数能够表示的结果有16种而生肖只有12种所以在此还需要判断这四位二进制数是否在jieguo中从而剔除0000110111101111这四种结果最后根据jieguo索引对应生肖并成功输出。 四、总程序代码 import sys from UI_shengxiao import * from PyQt5.QtWidgets import QApplication, QWidget, QButtonGroup# 保持窗口大小和qtdesigner中的一致 from PyQt5 import QtCore QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)class login_interface(QWidget, Ui_Form):def __init__(self):super(QWidget, self).__init__()self.setupUi(self)self.radioButton.clicked.connect(self.yizu)self.radioButton_2.clicked.connect(self.yizu)self.radioButton_3.clicked.connect(self.erzu)self.radioButton_4.clicked.connect(self.erzu)self.radioButton_5.clicked.connect(self.sanzu)self.radioButton_6.clicked.connect(self.sanzu)self.radioButton_7.clicked.connect(self.sizu)self.radioButton_8.clicked.connect(self.sizu)self.pushButton.clicked.connect(self.cai)self.group1 QButtonGroup()self.group1.addButton(self.radioButton)self.group1.addButton(self.radioButton_2)self.group2 QButtonGroup()self.group2.addButton(self.radioButton_3)self.group2.addButton(self.radioButton_4)self.group3 QButtonGroup()self.group3.addButton(self.radioButton_5)self.group3.addButton(self.radioButton_6)self.group4 QButtonGroup()self.group4.addButton(self.radioButton_7)self.group4.addButton(self.radioButton_8)self.result_1 2self.result_2 2self.result_3 2self.result_4 2self.jieguo [0001, 0010, 0011, 0100, 0101, 0110, 0111, 1000, 1001, 1010, 1011, 1100]self.shengxiao [鼠, 牛, 虎, 兔, 龙, 蛇, 马, 羊, 猴, 鸡, 狗, 猪]def yizu(self):if (self.radioButton.isChecked() True) and (self.radioButton_2.isChecked() False):self.result_1 1if (self.radioButton.isChecked() False) and (self.radioButton_2.isChecked() True):self.result_1 0def erzu(self):if (self.radioButton_3.isChecked() True) and (self.radioButton_4.isChecked() False):self.result_2 1if (self.radioButton_3.isChecked() False) and (self.radioButton_4.isChecked() True):self.result_2 0def sanzu(self):if (self.radioButton_5.isChecked() True) and (self.radioButton_6.isChecked() False):self.result_3 1if (self.radioButton_5.isChecked() False) and (self.radioButton_6.isChecked() True):self.result_3 0def sizu(self):if (self.radioButton_7.isChecked() True) and (self.radioButton_8.isChecked() False):self.result_4 1if (self.radioButton_7.isChecked() False) and (self.radioButton_8.isChecked() True):self.result_4 0def cai(self):if (self.result_1 2) or (self.result_2 2) or (self.result_1 3) or (self.result_4 2):QtWidgets.QMessageBox.critical(self, 提示, 有空余选项未选择)else:zongjieguo self.result_1self.result_2self.result_3self.result_4# print(zongjieguo)if zongjieguo in self.jieguo:shengxiao self.shengxiao[self.jieguo.index(zongjieguo)]QtWidgets.QMessageBox.information(self, 成功, 你的生肖是 shengxiao)else:QtWidgets.QMessageBox.critical(self, 提示, 请按照实际情况进行选择)if __name__ __main__:app QApplication(sys.argv)w login_interface()w.show()sys.exit(app.exec_())欢迎留言沟通交流
http://www.zqtcl.cn/news/102305/

相关文章:

  • 网站建设公司在哪里宣传c2c旅游电子商务平台
  • 网站查看空间商网站不提交表单
  • 空间怎么上传网站企业所得税怎么算公式
  • 网站建设wix建筑公司网站设计思路
  • 门户型网站都有哪些网页制作的视频教程
  • 虚拟主机 多个网站没有备案的网站
  • 河南网站建设推广公司汕尾网站建设
  • 海南省建设网站首页公司网站图片传不上去
  • 中国建设银行网站评价广告投放都有哪些平台
  • 网站系统免费wordpress附件不在数据库
  • 网站开发国外研究状况电商推广是什么意思
  • 太原建高铁站wordpress分级菜单显示
  • 工信部网站备案变更运营一个app大概多少钱
  • 杭州网站建设公司哪家好网站建设 中国联盟网
  • 成都手机网站建设价格网站安全检测软件
  • 长沙申请域名网站备案找个做游戏的视频网站
  • 网站平台开发与应用面试西安seo优化顾问
  • 苏州网站制作及推广中国优秀的企业网站
  • 网站开发语言太老东莞哪家公司做网站比较好
  • 单位网站制作费用报价单博客和个人网站建设情况
  • 山东网站建设公司电话全球建筑设计网站
  • wordpress 站点描述国外优秀网页设计赏析
  • php红酒网站建设软件开发外包项目合作
  • 做网站的都改行做什么了上海推牛网络科技有限公司
  • 在哪里建设网站dedecms做网站注意事项
  • 垂直类网站怎么做推广互联网站的建设维护营销
  • 手机网站大全排行江西省赣州市邮政编码
  • 集团网站建设建站模板seo优化工具软件
  • 大连项目备案网站网站建设一下需要多少费用
  • 松溪网站建设做网站外包