[Tutor] I may have sent the wrong client program before

Jeremiah Rushton Jeremiah.Rushton at gmail.com
Fri Oct 22 01:06:53 CEST 2004


here it is if the other one doesn't work....

------------------------------------------------------------------------------------------
from Tkinter import *
from socket import *
from threading import *

class Receive(Thread):
    
    def __init__(self, client, gettext):
        Thread.__init__(self)
	self.client = client
	self.gettext = gettext

    def run(self):
        while 1:
            try:
                text = self.client.recv(1024)
		if not text: break
                self.gettext.configure(state='normal')
                self.gettext.insert(END,'%s\n'%text)
                self.gettext.configure(state='disabled')
            except:
                break

class App(Thread):
    client = socket(AF_INET,SOCK_STREAM)
    ip = 'localhost'
    server = (ip, 285)
    client.connect(server)
    
    def __init__(self, master):
	Thread.__init__(self)
        
        frame = Frame(master)
        frame.grid(row=2,column=3)
        
        self.quitbutton = Button(frame, text="QUIT", fg='red',
command=frame.quit)
        self.quitbutton.grid(row=1,column=2)
        
        self.button = Button(frame, text="SEND", command=self.Send)
        self.button.grid(row=1,column=1)
        
        self.sendtext = Entry(frame,width=60)
        self.sendtext.grid(row=1,column=0)
        
        self.gettext = Text(frame,height=10,width=80,wrap=WORD)
        self.gettext.grid(row=0,columnspan=3)
        self.gettext.insert(END,'Welcome to my Instant Messaging Program\n')
        self.gettext.configure(state='disabled')

    def Send(self):
        text = self.sendtext.get()
        self.sendtext.delete(0,END)
        self.gettext.configure(state='normal')
        self.gettext.insert(END,'%s\n'%text)
        self.gettext.configure(state='disabled')
        self.client.send(text)
        
    def run(self):
	Receive(self.client, self.gettext).start()

        
root = Tk()
root.title('Client')
app = App(root).start()
root.mainloop()
------------------------------------------------------------------------------------------


More information about the Tutor mailing list