当前位置:   article > 正文

利用python socket+tkinter构建简陋聊天窗口_python聊天程序tkinter

python聊天程序tkinter

今天在之前socket 通信的基础上,使用tpython 自带的tkinter构建了简单的聊天工具,界面相当简陋,只能在局域网下实现双方通信。

平台
  • windows10
  • python 3.6.5
代码

其实就两个程序,TCPserver.pyTCPclient.py,分别实现服务端和客户端的聊天界面,先运行服务端,再运行客户端,客户端运行之后需要输入服务端的ip,本地运行的话使用环回地址即可。

from socket import *
import tkinter as tk
import tkinter.scrolledtext as tst
import time
import tkinter.messagebox
import threading

class Application(tk.Frame):
	def __init__(self,master):
		tk.Frame.__init__(self,master)
		self.grid()
		self.createWidgets()
	def createWidgets(self):
		#显示聊天窗口
		self.textEdit=tst.ScrolledText(self,width=50,height=15)
		self.textEdit.grid(row=0,column=0,rowspan=1,columnspan=4)
		#定义标签,改变字体颜色
		self.textEdit.tag_config('server',foreground='red')
		self.textEdit.tag_config('guest',foreground='blue')

		#编辑窗口
		self.inputText=tk.Text(self,width=40,height=5)
		self.inputText.grid(row=1,column=0,columnspan=1)
		#定义快捷键,按下回车即可发送消息
		self.inputText.bind("<KeyPress-Return>",self.textSendReturn)
		#发送按钮
		self.btnSend=tk.Button(self,text='send',command=self.textSend)
		self.btnSend.grid(row=1,column=3)
		#开启一个线程用于接收消息并显示在聊天窗口
		t=threading.Thread(target=self.getInfo)
		t.start()

	def textSend(self):
		#获取Text的所有内容
		str=self.inputText.get('1.0','end-1c')
		if str!="" :
			
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/686390
推荐阅读
相关标签
  

闽ICP备14008679号