كيف اشغل الواجهة الرسومية مع السوكيت من دون أن يتجمد البرنامج في الكود اسفل: كما ترون عند الضغط على زر لفتح البورت يتجمد الزر و البرنامج ككل.
و شكرا لكـم
from tkinter import *
import socket
port = 6000
host = ""
BufferSize = 1024
#def listen_btn():
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.bind((host, port))
sock.listen(5)
while True:
#Receiving from client
clnt, address = sock.accept()
data = clnt.recv(1024)
if data:
print(data.decode("ascii"))
def Close_btn():
clnt.close
def send_bnt():
clnt.send("Server ".encode("ascii"))
fen1 = Tk()
fen1.title("Chat")
fen1.geometry("310x278")
def prin_ok():
txto=text1.get()
label1 = Label(fen1,text = text1.get())
label1.pack()
text1.delete(0,END)
fen1.title(txto)
text1 = Entry(fen1, width=38)
text1.place(x=5,y=210)
richText=Text(font = '{MS Sans Serif} 10')
richText.place(x=5,y=5,width=300,height=200)
bou1 = Button(fen1, text="Send", command=send_bnt, width=9, height=1)
bou1.place(x=240,y=210)
bou2 = Button(fen1, text="Listen", command=listen_btn, width=9, height=1)
bou2.place(x=5,y=250)
bou3 = Button(fen1, text="Close", command=Close_btn, width=9, height=1)
bou3.place(x=240,y=250)
fen1.mainloop()