欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)簡(jiǎn)易聊天對(duì)話框

 更新時(shí)間:2022年02月07日 09:53:20   作者:丶藍(lán)色  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡(jiǎn)易聊天對(duì)話框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python實(shí)現(xiàn)簡(jiǎn)易聊天對(duì)話框的具體代碼,供大家參考,具體內(nèi)容如下

效果圖: 

客戶端代碼: 

import tkinter as tk
from tkinter import scrolledtext
import socket
import threading
from datetime import datetime
?
def tcp_recv(sock):
? ? while True:
? ? ? ? str = sock.recv(1024).decode("utf-8")
? ? ? ? show_info(str)
def send_func(sock):
? ? str = send_msg.get("0.0", "end")
? ? sock.send(str.encode("utf-8"))
? ? show_info(str)
?
def show_info(str):
? ? now = datetime.now()
? ? s_time = now.strftime("%Y-%m-%d %H:%M:%S")
? ? str = str.rstrip()
? ? if len(str) == 0:
? ? ? ? return -1
? ? send_msg.delete("0.0", "end")
? ? temp = s_time + "\n ? ?" + str + "\n"
? ? show_msg.insert(tk.INSERT, "%s" % temp)
?
msFont = '微軟雅黑' #字體
fontSize = 18 #字體大小
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.connect(("127.0.0.1",8888))
?
mainWindow = tk.Tk()
mainWindow.title("客戶端")
mainWindow.minsize(400,400)
show_msg = scrolledtext.ScrolledText(mainWindow,font=(msFont,fontSize))
show_msg.place(width=400,height=250,x=0,y=0)
#show_msg.insert(tk.INSERT,"%s 已連接\n"%addr[0])
send_msg = scrolledtext.ScrolledText(mainWindow,font=(msFont,fontSize))
send_msg.place(width=400,height=140,x=0,y=260)
button_send = tk.Button( mainWindow, font=(msFont,fontSize),text = "發(fā) ?送",bg="orange",fg="white",
? ? ? ? ? ? ? ? ? ? ? ? ?command=lambda:send_func(sock))
button_send.place(width=100,height=40,x=300,y=360)
?
t = threading.Thread(target=tcp_recv,args=(sock,))
t.start()
tk.mainloop()

服務(wù)器代碼:

import tkinter as tk
from tkinter import scrolledtext
import socket
import threading
from datetime import datetime
?
def tcp_recv(sock):
? ? while True:
? ? ? ? str = sock.recv(1024).decode("utf-8")
? ? ? ? show_info(str)
def send_func(sock):
? ? str = send_msg.get("0.0", "end")
? ? sock.send(str.encode("utf-8"))
? ? show_info(str)
?
def show_info(str):
? ? now = datetime.now()
? ? s_time = now.strftime("%Y-%m-%d %H:%M:%S")
? ? str = str.rstrip()
? ? if len(str) == 0:
? ? ? ? return -1
? ? send_msg.delete("0.0", "end")
? ? temp = s_time + "\n ? ?" + str + "\n"
? ? show_msg.insert(tk.INSERT, "%s" % temp)
?
msFont = '微軟雅黑' #字體
fontSize = 18 #字體大小
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.bind(("127.0.0.1",8888))
sock.listen(5)
?
mainWindow = tk.Tk()
mainWindow.title("服務(wù)器")
mainWindow.minsize(400,400)
show_msg = scrolledtext.ScrolledText(mainWindow,font=(msFont,fontSize))
show_msg.place(width=400,height=250,x=0,y=0)
send_msg = scrolledtext.ScrolledText(mainWindow,font=(msFont,fontSize))
send_msg.place(width=400,height=140,x=0,y=260)
button_send = tk.Button( mainWindow, font=(msFont,fontSize),text = "發(fā) ?送",bg="orange",fg="white",
? ? ? ? ? ? ? ? ? ? ? ? ?command=lambda:send_func(s))
button_send.place(width=100,height=40,x=300,y=360)
?
s,addr = sock.accept()
t = threading.Thread(target=tcp_recv,args=(s,))
t.start()
tk.mainloop()

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論