python图形用户接口实例详解

yipeiwu_com6年前Python基础

本文实例为大家分享了python图形用户接口实例的具体代码,供大家参考,具体内容如下

运用tkinter图形库,模拟聊天应用界面,实现信息发送.

from tkinter import *
import time
 
def main():
 #发送消息
 def sendMsg():
 strMsg = '我:'+ time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())+'\n'
 txtMsglist.insert(END,strMsg,'greencolor')
 txtMsglist.insert(END,txtMsg.get('0.0', END))
 txtMsg.delete('0.0',END)
 #键盘发送消息
 def senMsgKeyboard(event):
 if event.keysym == "Up":
  sendMsg()
 #取消发送
 def cancelMsg():
 txtMsg.delete('0.0', END)
 #窗口定义
 t = Tk()
 t.title("聊天窗口")
 
 # 页面布局
 # 创建frame容器
 frmLT = Frame(width=500, height=320, bg='white')
 frmLC = Frame(width=500, height=150, bg='white')
 frmLB = Frame(width=500, height=30)
 frmRT = Frame(width=200,height=500)
 # 创建控件
 txtMsglist = Text(frmLT)
 txtMsglist.tag_config('greencolor', foreground='#008C00')
 txtMsg = Text(frmLC)
 # 键盘发送消息
 txtMsg.bind("<KeyPress-Up>", senMsgKeyboard)
 # 按钮发送消息
 btnSend = Button(frmLB, text='发送', width=8, command=sendMsg)
 btnCancel = Button(frmLB, text='取消', width=8, command=cancelMsg)
 imageLink = PhotoImage(file = "test.gif")
 lblImage = Label(frmRT, image=imageLink)
 #控件布置到页面
 frmLT.grid(row=0, column=0, columnspan=2, padx=1, pady=3)
 frmLC.grid(row=1, column=0, columnspan=2, padx=1, pady=3)
 frmLB.grid(row=2, column=0, columnspan=2)
 frmRT.grid(row=0, column=2, rowspan=3, padx=2, pady=3)
 # 固定大小
 frmLT.grid_propagate(0)
 frmLC.grid_propagate(0)
 frmLB.grid_propagate(0)
 frmRT.grid_propagate(0)
 
 btnSend.grid(row=2, column=0)
 btnCancel.grid(row=2, column=1)
 lblImage.grid()
 txtMsglist.grid()
 txtMsg.grid()
 
 # 主事件循环
 t.mainloop()
if __name__ == '__main__':
 main()

界面效果如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python(TensorFlow框架)实现手写数字识别系统的方法

Python(TensorFlow框架)实现手写数字识别系统的方法

手写数字识别算法的设计与实现 本文使用python基于TensorFlow设计手写数字识别算法,并编程实现GUI界面,构建手写数字识别系统。这是本人的本科毕业论文课题,当然,这个也是机器...

你所不知道的Python奇技淫巧13招【实用】

有时候你会看到很Cool的Python代码,你惊讶于它的简洁,它的优雅,你不由自主地赞叹:竟然还能这样写。其实,这些优雅的代码都要归功于Python的特性,只要你能掌握这些Pythoni...

基于python select.select模块通信的实例讲解

基于python select.select模块通信的实例讲解

要理解select.select模块其实主要就是要理解它的参数, 以及其三个返回值。 select()方法接收并监控3个通信列表, 第一个是所有的输入的data,就是指外部发过来的数据,...

在Django的模型和公用函数中使用惰性翻译对象

在模型和公用函数中,使用ugettext_lazy()和ungettext_lazy()来标记字符串是很普遍的操作。 当你在你的代码中其它地方使用这些对象时,你应当确定你不会意外地转换它...

python selenium 执行完毕关闭chromedriver进程示例

因为使用多次以后发现进程中出现了很多chromedriver的残留,造成卡顿,所以决定优化一下。 这个问题困扰了楼主很久,百度谷歌查来查去都只有java,后面根据java和seleniu...