Python操作Redis
13
Python Tkinter库
-
13.1
Tkinter库的基本用法
-
13.2
Tkinter Label标签的用法
-
13.3
Tkinter Buttion按钮的用法
-
13.4
Tkinter Radiobutton单选框的用法
-
13.5
Tkinter Checkbutton复选框的用法
-
13.6
Tkinter Entry文本框的用法
-
13.7
Tkinter Scale滑块组件的用法
-
13.8
Tkinter Listbox列表框的用法
-
13.9
Tkinter Menu菜单组件的用法
-
13.10
Tkinter布局
Python wxPython库
Python PyQt5库
Python Matplotlib库
Python NumPy库
下面编写一个游戏程序,在游戏开始时,程序输出一个 1 到 100 之间的整数值,现在需要拖动滑块到该值对应的位置,然后单击“测量一下”按钮来查看当前滑块对应的真实值,看看自己对位置估计的能力。如果不太满意,可以单击“再来一次”按钮来进行下一次测试。
下面是完整的代码:
import sys # 引入sys模块,用来判断当前的解释器是Python 2还是Python 3
if sys.version_info.major == 3: # 如果是Python 3
import tkinter as tk
elif sys.version_info.major == 2: # 如果是Python 2
import Tkinter as tk
import random # 引入random模块,出题用的
class DemoApplication(tk.Frame): # 定义一个窗口类
def measure(self):
# 还没有测量
if self.button_operation.state == 0:
real_val = self.scale_bar.get() # 得到真实值
self.real_label['text'] = u"你的真实值为%d" % real_val
self.button_operation["text"] = u"再来一次" # 修改按钮文字
self.button_operation.state = 1 # 修改状态
else: # 已经测量过了
self.expected_val = random.randint(0, 100)
expected_label_txt = u"期待的值为%d" % self.expected_val
self.expected_label['text'] = expected_label_txt
self.real_label['text'] = ""
self.button_operation.state = 0
self.button_operation["text"] = u"测量一下"
def createWidgets(self):
self.expected_val = random.randint(0, 101)
expected_label_txt = u"期待的值为%d" % self.expected_val
self.expected_label = tk.Label(main_win, text=expected_label_
self.expected_label.pack()
self.scale_bar = tk.Scale(main_win, orient=tk.HORIZONTAL, showvalue=0)
self.scale_bar['length'] = 500
self.scale_bar.pack()
self.real_label = tk.Label(main_win, text="")
self.real_label.pack()
self.button_operation = tk.Button(main_win)
self.button_operation.state = 0
self.button_operation["text"] = u"测量一下"
self.button_operation["command"] = self.measure
self.button_operation.pack()
def __init__(self, master=None):
tk.Frame.__init__(self, master)
self.pack()
self.createWidgets()
main_win = tk.Tk()
main_win.title(u"试试手感")
main_win.geometry("600x100")
app = DemoApplication(master=main_win)
app.mainloop()
运行后的效果如图 3 所示。
图 3 估算位置初始画面
拖动滑块到估计的位置,然后单击“测量一下”按钮会显示测试结果,如图 4 所示。
图 4 查看实际值
Linux系统的构成
Go语言浮点类型(小数)
Linux mount挂载命令详解
Linux安装MySQL教程
Python Redis管道模式
Nginx Stream(TCP/UDP)负载均衡
Python read()函数:读入指定长度的文本
Matplotlib绘制散点图
C语言循环结构(三种形式)
Python字典(dict)的用法
weixueyuan.net 谐音「微学苑」,也即学习之地,我们专注于分享优质编程教程,帮助对编程感兴趣的读者。