python图形用户接口实例详解

yipeiwu_com7年前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利用PyExecJS库执行JS函数的案例分析

Python利用PyExecJS库执行JS函数的案例分析

  在Web渗透流程的暴力登录场景和爬虫抓取场景中,经常会遇到一些登录表单用DES之类的加密方式来加密参数,也就是说,你不搞定这些前端加密,你的编写的脚本是不可能...

Python标准库06之子进程 (subprocess包) 详解

这里的内容以Linux进程基础和Linux文本流为基础。subprocess包主要功能是执行外部的命令和程序。比如说,我需要使用wget下载文件。我在Python中调用wget程序。从这...

python 中字典嵌套列表的方法

如下所示: >>> dict={} >>> dict['list']=[] >>> dict['list'].append([1...

详解python opencv、scikit-image和PIL图像处理库比较

详解python opencv、scikit-image和PIL图像处理库比较

进行深度学习时,对图像进行预处理的过程是非常重要的,使用pytorch或者TensorFlow时需要对图像进行预处理以及展示来观看处理效果,因此对python中的图像处理框架进行图像的读...

python删除本地夹里重复文件的方法

上次的博文主要说了从网上下载图片,于是我把整个笑话网站的图片都拔下来了,但是在拔取的图片中有很多重复的,比如说页面的其他图片、重复发布的图片等等。所以我又找了python的一些方法,写了...