Python系列 | 基于Tkinter图形化界面实现课堂点名系统

课堂点名器实现的效果:

请添加图片描述

exe程序已打包如下,欢迎大家下载使用!!!

链接:课堂点名系统 提取码: qx18

一、核心功能设计

课堂点名系统实现的思路大致为可以自定义设置班级学生姓名或者默认通过学号进行学生随机点名抽取(txt文件),可以随机点名和顺序点名两个模式互相切换,并将这些随机抽取的学生姓名历史数据显示。

拆解需求,接下来我们可以通过以下几步进行实现:

  1. UI排版布局设计,确认点名器的各个功能设计
  2. 读取班级学生的姓名文件,将各个学生的姓名加载到列表中
  3. 实现对学生姓名的随机点名抽取功能和顺序点名抽取功能
  4. 语言播报功能
  5. 查看随机抽取的学生姓名历史数据

二、准备工作

1. Tkinter

Tkinter 是 python 内置的 TK GUI 工具集。TK 是 Tcl 语言的原生 GUI 库。作为 python
的图形设计工具,它所使用的 Tcl 语言环境已经完全嵌入到了 python 解释器中。

我们使用Tkinter开发GUI界面。

2. Pyttsx3

pyttsx3是Python中的文本到语音转换库。

我们使用Pyttsx3开发语音播报。

三、实现步骤

1. UI排版布局设计实现

根据点名器所需要的功能,首先我们可以进行UI布局设计,使用的是Tkinter。主要包含了姓名的随机抽取显示功能、开始与结束执行按钮、抽取历史结果的查看功能、姓名文件的读取显示等。

核心设计代码如下:

# woshinsy
# 主界面
name_list = []
history_list=[]
running_flag=False
seed=False
author=False
root = Tk()
root.title('Python_点名器 V2.0')
root.iconbitmap('favicon.ico')
root.geometry('500x360')
root.call("source", "azure.tcl")
root.call("set_theme", "dark")
a = StringVar()
a.set('恭喜谁呢?')
b = StringVar()
b.set('顺序模式')

# 扩展UI
root.paned = ttk.PanedWindow(root,height='250',width='500')
root.paned.grid(row=0, column=2, pady=(400, 5), rowspan=50)
# Notebook, pane #2
root.pane_2 = ttk.Frame(root.paned, padding=5)
root.paned.add(root.pane_2, weight=3)
# Notebook, pane #2
root.notebook = ttk.Notebook(root.pane_2)
root.notebook.pack(fill="both", expand=True)
root.tab_2 = ttk.Frame(root.notebook)
root.notebook.add(root.tab_2, text
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值