python代码模拟下拉_python tkinter之 复选、文本、下拉的实现

本文介绍了如何使用Python的Tkinter库创建GUI,包括添加标题,创建标签,实现文本框、下拉选择框以及复选框的功能。还提供了代码示例,展示了如何获取和修改文本框内容,以及设置和读取复选框状态。最后,补充了Tkinter中关于Entry和Label组件的一些注意事项。
摘要由CSDN通过智能技术生成

我就废话不多说了,直接看代码吧!

import tkinter as tk

from tkinter import ttk

win = tk.Tk()

win.title("Python GUI") # 添加标题

ttk.Label(win, text="Chooes a number").grid(column=1, row=0) # 添加一个标签0

ttk.Label(win, text="Enter a name:").grid(column=0, row=0) # 设置其在界面中出现的位置

# button被点击之后会被执行

def clickMe(): # 当acction被点击时,该函数则生效

action.configure(text='Hello ' + name.get() + ' ' + numberChosen.get())#设置button显示的内容

print('check3 is %d %s' % (chvarEn.get(), type(chvarUn.get())))

action = ttk.Button(win, text="Click Me!", command=clickMe) # 创建一个按钮, text:显示按

action.grid(column=2, row=1) # 设置其在界面中出现的位置

# 文本框

name = tk.StringVar() # StringVar是Tk库内部定义的字符串变量类型,在这里用于管理

#部件上面的字符;不过一般用在按钮button上。改变StringVar,按钮上的文字也随之改变。

nameEntered = ttk.Entry(win, width=12, textvariable=name) # 创建一个文本框,字符长度为12,

#内容绑定到name,方便clickMe调用

nameEntered.grid(column=0, row=1) # 设置其在界面中出现的位置

nameEntered.focus() # 当程序运行时,光标默认会出现在该文本框中

# 一个下拉列表

number = tk.StringVar()

numberChosen = ttk.Combobox(win, width=12, textvariable=number, state='readonly')

numberChosen['values'] = (1, 2, 4, 42, 100) # 设置下拉列表的值

numberChosen.grid(column=1, row=1) # 设置其在界面中出现的位置 column代表列 row 代表行

numberChosen.current(4) # 设置下拉列表默认显示的值,0为numberChosen['values'] 的下标值

# 复选框

chVarDis = tk.IntVar() # 用来获取复选框是否被勾选,通过chVarDis.get()来获取其的状态,

#其状态值为int类型 勾选为1 未勾选为0

check1 = tk.Checkbutton(win, text="Disabled", variable=chVarDis, state='disabled') # text为复选框

#后面的名称,variable将该复选框的状态赋值给一个变量,当state='disabled'时,

#该复选框为灰色,不能点的状态

check1.select() # 该复选框是否勾选,select为勾选, deselect为不勾选

check1.grid(column=0, row=4, sticky=tk.W) # sticky=tk.W 当该列中其他行或该行中的其他列的

#某一个功能拉长这列的宽度或高度时,设定该值可以保证本行保持左对齐,

#N:北/上对齐 S:南/下对齐 W:西/左对齐 E:东/右对齐

chvarUn = tk.IntVar()

check2 = tk.Checkbutton(win, text="UnChecked", variable=chvarUn)

check2.deselect()

check2.grid(column=1, row=4, sticky=tk.W)

chvarEn = tk.IntVar()

check3 = tk.Checkbutton(win, text="Enabled", variable=chvarEn)

check3.select()

check3.grid(column=2, row=4, sticky=tk.W)

win.mainloop() # 当调用mainloop()时,窗口才会显示出来

补充知识:【tkinter】填坑 解决Entry、Label不能修改text、image等属性的问题

tkinter中定义一个输入,如:

input =Entry(root).pack()

不等于以下定义

input =Entry(root) input.pack()

后者定义后直接布局,返回的不是Entry()控件本身,没有entry所有的一些方法如get()等

按照前者定义 input =Entry(root).pack() 后,可利用input.get() 获得输入框的文本信息。

利用 input['text']可修改Entry()文本框的文本内容。Label等控件同理,如法还可以修改Label['image']实现动态显示图片等操作。

以上这篇python tkinter之 复选、文本、下拉的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持python博客。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值