基础16·tkinter库下的第二窗口及多窗口界面实现(函数的自身调用)


from tkinter import*

#第二窗口定义
def windows2():
   master = Tk()  # 导入tkinter中的tk模块
   master.title('小黑的翻译器2')
   master.geometry('460x120+1200+500')
   label1 = Label(master, text='输入内容:', font=('GB2312', 16), fg='SteelBlue')
   label1.grid(row=0, column=0)
   label2 = Label(master, text='结果:', font=('C71585', 16), fg='SteelBlue')
   label2.grid(row=1, column=0)
   entry1 = Entry(master, font=('GB2312', 18), fg='Plum')
   entry1.grid(row=0, column=1, )
   s = StringVar()
   entry2 = Entry(master, font=('GB2312', 18), fg='DarkCyan', textvariable=s)
   entry2.grid(row=1, column=1)
   button1 = Button(master, text='打开', width=10, font=('GB2312', 18), background='Tan')
   button1.grid(row=2, column=0, sticky=W)
   button2 = Button(master, text='退出', width=10, font=('GB2312', 18), background='Tan', command=master.quit)
   button2.grid(row=2, column=1, sticky=E)
   master.mainloop()

#第一窗口设置

master=Tk()#导入tkinter中的tk模块
master.title('小黑的翻译器')
master.geometry('460x120+1100+400')
#显示框样式
label1=Label(master,text='输入内容:',font=('GB2312',16),fg='SteelBlue')
label1.grid(row=0,column=0)

label2=Label(master,text='结果:',font=('C71585',16),fg='SteelBlue')
label2.grid(row=1,column=0)
#输入框设置
entry1=Entry(master,font=('GB2312',18),fg='Plum')
entry1.grid(row=0,column=1,)

s=StringVar()
entry2=Entry(master,font=('GB2312',18),fg='DarkCyan',textvariable=s)
entry2.grid(row=1,column=1)

#按钮设置

#第二窗口导入
button1=Button(master,text='打开',width=10,font=('GB2312',18),background='Tan',command=windows2)   #window2不带括号
button1.grid(row=2,column=0,sticky=W)

button2=Button(master,text='退出',width=10,font=('GB2312',18),background='Tan',command=master.quit)
button2.grid(row=2,column=1,sticky=E)

master.mainloop()#一直运行,不停止

结果展示
在这里插入图片描述
函数自身调用实现多窗口


from tkinter import*

#第二窗口定义
def windows2():
   master = Tk() 
   master.title('小黑的翻译器2')

   label1 = Label(master, text='输入内容:', font=('GB2312', 16), fg='SteelBlue')
   label1.grid(row=0, column=0)
   label2 = Label(master, text='结果:', font=('C71585', 16), fg='SteelBlue')
   label2.grid(row=1, column=0)
   entry1 = Entry(master, font=('GB2312', 18), fg='Plum')
   entry1.grid(row=0, column=1, )
   s = StringVar()
   entry2 = Entry(master, font=('GB2312', 18), fg='DarkCyan', textvariable=s)
   entry2.grid(row=1, column=1)
   
   #调用函数自身,实现多窗口
   button1 = Button(master, text='打开', width=10, font=('GB2312', 18), background='Tan',command=windows2)
   button1.grid(row=2, column=0, sticky=W)
   
   button2 = Button(master, text='退出', width=10, font=('GB2312', 18), background='Tan', command=master.quit)
   button2.grid(row=2, column=1, sticky=E)
   master.mainloop()

windows2()

结果展示:
在这里插入图片描述

参考资源链接:[Python Tkinter GUI编程指南](https://wenku.csdn.net/doc/mtjh92855t?utm_source=wenku_answer2doc_content) 要创建一个包含文本输入、按钮和标签的简单GUI窗口,你可以参考《Python Tkinter GUI编程指南》这本书,它提供了全面的Tkinter编程知识,从基础知识到高级应用,是初学者和进阶开发者不可多得的资源。以下是一个具体的实现步骤和示例代码: 1. **导入Tkinter模块**:这是使用Tkinter库的第一步,它包含了创建GUI所需的所有类和方法。 ```python import tkinter as tk ``` 2. **创建窗口**:主窗口是应用界面的顶层容器,所有的GUI元素都将添加到这个窗口中。 ```python root = tk.Tk() ``` 3. **添加标签**:标签控件用于显示文本或图片,它可以让用户了解输入框的作用。 ```python label = tk.Label(root, text='请输入文本') label.pack() ``` 4. **添加文本输入框**:文本输入框允许用户输入信息。我们可以通过设置`width`和`height`属性来控制其大小。 ```python entry = tk.Entry(root) entry.pack() ``` 5. **添加按钮**:按钮控件用于触发事件,这里我们将绑定一个事件处理函数,当用户点击按钮时会调用函数。 ```python def on_button_click(): user_input = entry.get() label.config(text=f'您输入的内容是:{user_input}') button = tk.Button(root, text='点击我', command=on_button_click) button.pack() ``` 6. **启动事件循环**:最后,调用`mainloop()`函数启动Tkinter的事件循环,这会使得窗口等待用户的操作。 ```python root.mainloop() ``` 在上述代码中,我们创建了一个包含标签、文本输入框和按钮的GUI窗口。用户输入文本后点击按钮,程序会读取输入框的内容并通过标签显示出来。这个例子展示了Tkinter创建控件和绑定事件的基础用法。 掌握这些基础概念后,你可以继续深入学习《Python Tkinter GUI编程指南》中的其他内容,如布局管理器的使用、不同控件的详细配置以及更复杂的事件处理技巧。这些知识将帮助你构建更为复杂和功能丰富的GUI应用程序。 参考资源链接:[Python Tkinter GUI编程指南](https://wenku.csdn.net/doc/mtjh92855t?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值