基于Python pyqt5的随机抽号机源代码 ,可设置抽号器的人数及刷新间隔
基于Python pyqt5的随机抽号机源代码 ,可设置抽号器的人数及刷新间隔,直接运行main.py即可
完整代码下载地址: pyqt5的随机抽号机源代码
main.py
import sys
from PyQt5.QtWidgets import QApplication
from UI.MyGui import MyWindows, MyGuiif __name__ == '__main__':app = QApplication(sys.argv) # 创建应用程序对象, sys.argv同c++的argv。全局对象:qApp# ===控件操作开始===# 1.1 创建控件widget = MyGui()mainWindow = MyWindows()mainWindow.setupUi(widget) # 将ui文件生成的框架注册到widget中widget.show()# ===应用程序的执行===sys.exit(app.exec_()) # 程序的生命周期跟随app窗口, 并启动监听循环
MyGUI.py
import configparser
import random# from PyQt5.Qt import * # 导入常用的Qt插件
from PyQt5.QtCore import QTimer
from PyQt5.QtWidgets import QWidget, QMessageBox
from plugin.Log.LogInFile import LogInFilefrom UI.PyQtDemo import Ui_MainWindow
from plugin.CfgManager.CfgSave import CfgFileManagerclass MyWindows(Ui_MainWindow):def __init__(self):super(MyWindows, self).__init__()# 共有属性self.qTimer = None # 定时器self.cfm = CfgFileManager() # 配置管理器# 私有属性self.__logInFile = LogInFile("../Roller.log") # 记录日志self.__refreshCycle = 50 # 数码管刷新周期self.__stuNum = 50self.__startFlag = 0# 从配置文件读取配置信息self.GetAllCfgFromIni()def setupUi(self, MainWindow):super(MyWindows, self).setupUi(MainWindow)# UI调整self.qTimer = QTimer(MainWindow);self.LE_RefreshStep.setText(str(self.__refreshCycle))self.LE_StuNum.setText(str(self.__stuNum))# 信号链接self.qTimer.timeout.connect(lambda: self.ShowNumTimer())self.LE_StuNum.editingFinished.connect(lambda: self.SetStuNum(self.LE_StuNum.text()))self.LE_RefreshStep.editingFinished.connect(lambda: self.SetRefreshStep(self.LE_RefreshStep.text()))self.PB_Roller.clicked.connect(lambda: self.PB_Click())self.RB_LogSwitch.clicked.connect(lambda: self.__logInFile.LogSwitch()) # 抽号日志开关def GetAllCfgFromIni(self):# 从配置文件中读取值self.__refreshCycle = self.GetCfgFromIni("self.__refreshCycle")self.__stuNum = self.GetCfgFromIni("self.__stuNum")def GetCfgFromIni(self, Section):val = 50try:val = self.cfm.Get(Section)if val is None:val = 50else:val = eval(val)except configparser.NoSectionError:passreturn valdef SaveCfgToIni(self, Section, val):try:self.cfm.Save(str(Section), str(val))self.__logInFile.Log(str(Section) + ' = ' + str(val))except:passdef SetStuNum(self, num):try:self.__stuNum = int(eval(str(num)))self.SaveCfgToIni("self.__stuNum", self.__stuNum)self.LE_StuNum.setText(str(self.__stuNum))except:self.LE_StuNum.setText(str(self.__stuNum))msg_box = QMessageBox(QMessageBox.Critical, '错误', '设置为:' + str(num) + '[失败],请检查')msg_box.exec_()passdef SetRefreshStep(self, num):try:self.__refreshCycle = float(eval(str(num)))self.SaveCfgToIni("self.__refreshCycle", self.__refreshCycle)except:self.LE_RefreshStep.setText(str(self.__refreshCycle))msg_box = QMessageBox(QMessageBox.Critical, '错误', '设置为:' + str(num) + '[失败],请检查')msg_box.exec_()def PB_Click(self):self.__startFlag = (self.__startFlag + 1) % 2if self.__startFlag == 1:self.__logInFile.Log("start")random.seed()self.qTimer.start(self.__refreshCycle)self.PB_Roller.setText("停止")else:self.__logInFile.Log("stop")self.qTimer.stop()self.PB_Roller.setText("开始")def ShowNumTimer(self):num = random.randint(1, self.__stuNum)self.lcdNumber.display(num)self.__logInFile.Log(num)class MyGui(QWidget):def __init__(self):super(MyGui, self).__init__()def setCentralWidget(self, tmp):passdef setStatusBar(self, tmp):passdef setMenuBar(self, tmp):pass
完整代码下载地址: pyqt5的随机抽号机源代码
基于Python pyqt5的随机抽号机源代码 ,可设置抽号器的人数及刷新间隔相关推荐
- 手把手教你写一个基于python+pyqt5的股票盯盘软件
今天教大家基于Python+pyqt5开发一款股票盯盘小软件,里面含有微信推送.策略分析.回测.实时统计持仓盈亏等功能,其实我们也可以把它叫做股票量化小软件.开发这么一款小软件首先得具备Python的 ...
- html 选择自动增加行数,为网页中的源代码自动设置行号
本文演示了如何为网页中的源代码块自动设置行号. 现在,我们准备在网页中显示C++的Hello world.这段著名的代码如下所示: #include intmain() { std::cout < ...
- 基于Python PYQT5的GUI亚丁号辅助登陆界面
一.准备工作 1.Python 3.7 (没升级) 2.pyqt5(6的api改了好多并且网上资料少) 3.pycharm社区版 4.OS widows11 二.真相 三.实际代码 主要就是个布局,界 ...
- 基于python pyvisa模块控制GPIB设备识别不到设备资源号问题
项目场景: 要注意首先安装GPIB的驱动和NI-VISA软件. 使用python控制E4440A频谱分析仪等设备,主要获取测试时的参数,数据保存到某平台报表.但在调试过程中主要遇到控制最大的问题就是找 ...
- django基于python的图书馆管理系统--python-计算机毕业设计
项目介绍 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息.为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代, ...
- django基于python的旅游网站--python-计算机毕业设计
项目介绍 旅游网站系统的用户分管理员和用户两个角色的权限子模块. 管理员所能使用的功能主要有:首页.个人中心.用户管理.景点分类管理.景点信息管理.门票预订管理.酒店信息管理.客房信息管理.客房预订管 ...
- 基于python的CFC滤波器实现(附源代码)
初学python欢迎各位大佬指正 参考文件 ISO6487 标准文件 ISO 6487: Road vehicles - Measurement techniques in impact tests ...
- 基于Python的学生信息管理系统(附源代码)3.7
开发环境要求 本系统的软件开发及运行环境具体如下. 操作系统:Windows 7.Windows 10. Python版本:Python 3.7.0. 开发工具:Python IDLE. 运行方法 在 ...
- 【基于python版本的连续英文分词实现java版本的英文分词器】
连续英文分词器java版本 定义词典, 构建词典 切词实现 在搜索领域,用户的输入是千奇百怪的,有时候用户输入的是连续的英文,如果不能有效的进行切分,那么搜索召回的效果可能会比较差,所以我们需要针对连 ...
最新文章
- UITextView添加占位字符
- 二叉树构建及双向链表
- 用java调用.net的wcf其实还是很简单的
- $.each()、$.map()区别浅谈
- js不区分大小写查找字符串
- ubuntu php 关闭警告,ubuntu部署OWASP Mutillidae II php WARING
- DataTable转Csv,Excel(转)
- Educational Codeforces Round 52E(构造,快速幂)
- 第十三章 hadoop机架感知
- 多表查询过滤重复数据_数据分析工具SQL—多表查询
- 计算几何模板(kuangbin)
- linux图片处理软件,Ubuntu 下图像处理软件汇总
- Linux 桌面玩家指南:01. 玩转 Linux 系统的方法论
- 更改win10系统的默认图片打开方式为windows照片查看器
- element-ui表格合并数据相同行
- 本周最新文献速递20211226
- OUC课程评价小程序(测试报告)
- uni-app 解决软键盘弹起输入框遮盖问题
- nova service的heatbeat机制
- php文章内链教程,怎么给文章关键词自动添加内链链接? - WordPress教程