Pyhton_68

这篇博客介绍了使用Tkinter库创建GUI应用程序的基础,包括创建输入框、显示密码、验证用户输入内容以及响应按钮事件。通过示例展示了如何在用户焦点离开输入框时进行验证,以及在用户点击按钮时打印输入信息。同时,还涵盖了在输入框中设置默认文本以及限制输入内容为数字的功能。
摘要由CSDN通过智能技术生成
from tkinter import *
root = Tk()
Label(root, text="账号:").grid(row=0, column=0)
Label(root, text="密码:").grid(row=1, column=0)
v1 = StringVar()
v2 = StringVar()
e1 = Entry(root, textvariable=v1)
e2 = Entry(root, textvariable=v2, show='*')
e1.grid(row=0, column=1, padx=10, pady=5)
e2.grid(row=1, column=1, padx=10, pady=5)
def show():
    print("账号:%s" % e1.get())
    print("密码:%s" % e2.get())
Button(root, text="获取信息",width=10, command=show).\
                grid(row=2, column=0, sticky=W, padx=10, pady=5)
Button(root, text="退出",width=10, command=root.quit()).\
                grid(row=2, column=1, sticky=E, padx=10, pady=5)
mainloop()
=====================================================
from tkinter import *
master = Tk()
v = StringVar()
def test1():
    if v.get()=="小甲鱼":
        print("正确!")
        return True
    else:
        print("错误!")
        e1.delete(0, END)
        return False
def test2():
    print("我被调用了!")
    return True
e1 = Entry(master, textvariable=v, validate="focusout", \
        validatecommand=test1, invalidcommand=test2)
e2 = Entry(master)
e1.pack(padx=10, pady=10)
e2.pack(padx=10, pady=10)
        
mainloop()
===================
from tkinter import *
master = Tk()
v1 = StringVar()
v2 = StringVar()
v3 = StringVar()
def test(content):
    return content.isdigit(),
e1 = Entry(master, textvariable=v, validate="key", \
            validatecommand=("testCMD", "%P")).grip(row=0, column=0)

Label(master, text="+").grip(row=0, column=1)

e2 = Entry(master, textvariable=v, validate="key", \
            validatecommand=("testCMD", "%P")).grip(row=0, column=2)

Label(master, text="=").grip(row=0, column=3)

e3 = Entry(master)).grip(row=0, column=4)



mainloop()
================
from tkinter import *
root = Tk()
e1 = Entry(root)
e1.pack(padx=20, pady=20)
e1.delete(0, END)
e1.insert(0, "默认文本")
mainloop()
=================再写一遍
from tkinter import *
root = Tk()
Label(root, text="作者:").grid(row=0, column=0)
Label(root, text="作品:").grid(row=1, column=0)
v1 = StringVar()
v2 = StringVar()
e1 = Entry(root, textvariable=v1)
e2 = Entry(root, textvariable=v2, show='*')
e1.grid(row=0, column=1, padx=10, pady=5)
e2.grid(row=1, column=1, padx=10, pady=5)
def show():
    print("作者:%s" % e1.get())
    print("作品:《%s》" % e2.get())

Button(root, text="获取信息", width=10, command=show)\
            .grid(row=2, column=0, sticky=W, padx=10, pady=5)
Button(root, text="退出", width=10, command=root.quit)\
            .grid(row=2, column=1, sticky=E, padx=10, pady=5)
mainloop()
=====================
from tkinter import *
master = Tk()
def test():
    if e1.get()=="小甲鱼":
        print("正确")
        return True
    else:
        print("错误!")
        e1.delete(0, END)
        return False
def test2():
        print("我被调用了!")
        return True
v = StringVar()
e1 = Entry(master, textvariable=v, validate="focusout", validatecommand=test, \                                                
         invalidatecommand=test2) 
#焦点移走的时候
e2 = Entry(master)
e1.pack(padx=10, pady=5)
e2.pack(padx=10, pady=5)
mainloop()
from tkinter import *
master = Tk()
v = StringVar()
def test(content, reason, name):
    if content=="小甲鱼":
        print("正确!")
        print(content, reason, name)
        return True
    else:
        print("错误!")
        print(content, reason, name)
        return False
testCMD = master,register(test) #用register把test包装起来,防止tkinter认不出来
e1 = Entry(master, textvariable=v, validate="focusout", \
            validatecommand=(testCMD, "%P, %v ,%W"))
e2 = Entry(master)
e1.pack(padx=10, pady=10)
e2.pack(padx=10, pady=10)
mainloop()
===========================
from tkinter import *

master = Tk()
frame = Frame(master)
frame.pack(padx=10, pady=10)
v1 = StringVar()
v2 = StringVar()
v3 = StringVar()


def test(content):
    return content.isdigit()

def calc():
    result = int(v1.get()) + int(v2.get())
    v3.set(str(result))

testCMD = master.register(test)  # 用register把test包装起来,防止tkinter认不出来
e1 = Entry(frame, textvariable=v1, validate="key",\
           validatecommand=(testCMD, "%P")).grid(row=0, column=0)
Label(frame, text="+").grid(row=0, column=1)

e2 = Entry(frame, textvariable=v2, validate="key",\
           validatecommand=(testCMD, "%P")).grid(row=0, column=2)
Label(frame, text="=").grid(row=0, column=3)

e3 = Entry(frame, textvariable=v3, state="readonly").grid(row=0, column=4)

Button(frame, text="计算结果:", command=calc).grid(row=1, column=2, pady=5)

mainloop()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王泽邦_bill

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值