Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MAX_BYTES = 65535
- import tkinter
- from tkinter import *
- import argparse
- import socket
- dic = {"one":"um", "two": "dois"}
- def server(port):
- sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
- sock.bind(('127.0.0.1', port))
- print('Listening at {}'.format(sock.getsockname()))
- while True:
- a, ad = sock.recvfrom(MAX_BYTES)
- a = a.decode("utf-8")
- print(a)
- if a == "pesquisa":
- req, add = sock.recvfrom(MAX_BYTES)
- f = req.decode("utf-8")
- f = str(f).strip().lower()
- print(f)
- if f in dic:
- env = dic.get(f)
- b = env.encode('utf-8')
- sock.sendto(b, add)
- else:
- err = 'A PALAVRA NAO ESTA CONTIDA NO DICIONARIO'
- b = err.encode('utf-8')
- sock.sendto(b, add)
- elif a == "lista":
- env = str(dic.items())
- env = env.encode('utf-8')
- sock.sendto(env, ad)
- elif a == "adc":
- rig, add = sock.recvfrom(MAX_BYTES)
- rig = rig.decode('utf-8')
- rig = str(rig).strip().lower()
- rpt, add = sock.recvfrom(MAX_BYTES)
- rpt = rpt.decode('utf-8')
- rpt = str(rpt).strip().lower()
- dic[rig] = rpt
- envs = str(dic.items())
- envs = envs.encode('utf-8')
- sock.sendto(envs, ad)
- def client(port):
- sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
- def pesquisa():
- verif = "pesquisa"
- verif = verif.encode("utf-8")
- sock.sendto(verif, ('127.0.0.1', port))
- key = str(entrada.get()).strip()
- key = key.encode("utf-8")
- sock.sendto(key, ('127.0.0.1', port))
- r, ad = sock.recvfrom(MAX_BYTES)
- lblmostra["text"] = "%s" %r.decode("utf-8")
- def lista():
- verif = "lista"
- verif = verif.encode("utf-8")
- sock.sendto(verif, ('127.0.0.1', port))
- jlista = Tk()
- r, add = sock.recvfrom(MAX_BYTES)
- lblista = Label(jlista, text="%s" %r.decode("utf-8"))
- lblista.place(x="50", y="50")
- jlista.mainloop()
- def adc():
- verif = "adc"
- verif = verif.encode("utf-8")
- sock.sendto(verif, ('127.0.0.1', port))
- def ok():
- r = str(entig.get()).strip().lower()
- print(r)
- r = r.encode("utf-8")
- sock.sendto(r, ('127.0.0.1', port))
- s = str(entpt.get()).strip().lower()
- print(s)
- s = s.encode("utf-8")
- sock.sendto(s, ('127.0.0.1', port))
- v, ad = sock.recvfrom(MAX_BYTES)
- v = v.decode('utf-8')
- lbit["text"] = "%s" % v
- jadc = Tk()
- lbpt = Label(jadc, text="Insira a palavra em portugues:")
- lbpt.place(x="50", y="50")
- entpt = Entry(jadc, text="", width="25")
- entpt.place(x="50", y="80")
- lbig = Label(jadc, text="Insira a palavra em inglês:")
- lbig.place(x="50", y="110")
- entig = Entry(jadc, text="", width="25")
- entig.place(x="50", y="140")
- btnvai = Button(jadc, text="ADICIONA", width=10, command=ok)
- btnvai.place(x="80", y="170")
- lbit = Label(jadc, text="")
- lbit.place(x="50", y="200")
- jadc.mainloop()
- def sobre():
- jsobre = Tk()
- lbsobre = Label(jsobre, text=" Dicionario Inglês - Português \n "
- "Autores: Anderson Luis e Rebecca Câmara")
- lbsobre.place(x="50", y="50")
- jsobre.mainloop()
- janela = Tk() # ciração da janela da interface grafica
- janela.title("SUPORTE AO USUARIO") # nome da janela
- janela.geometry("550x367+200+200") # dimensões da janela
- foto = PhotoImage(file="bg1.png") # importação de uma imagem para background
- lblbg = Label(janela, image=foto) # definindo o background
- lblbg.place(x="0", y="0")
- entrada = Entry()
- entrada.place(x="200", y="180")
- btnPesquisa = Button(janela, text="PESQUISAR", width=10, bg="white", fg="black", command=pesquisa)
- btnPesquisa.place(x="350", y="178")
- lblmostra = Label(janela, text="", bg="white", fg="black")
- lblmostra.place(x="200", y="220")
- btnLista = Button(janela, text="LISTAR", width=10, height=1, bg="gray", fg="black", command=lista)
- btnLista.place(x="0", y="0")
- btnAdc = Button(janela, text="ADICIONAR", width=10, height=1, bg="gray", fg="black", command=adc)
- btnAdc.place(x="80", y="0")
- btnSobre = Button(janela, text="SOBRE", width=10, height=1, bg="gray", fg="black", command=sobre)
- btnSobre.place(x="160", y="0")
- janela.mainloop()
- if __name__ == '__main__':
- choices = {'client': client, 'server': server}
- parser = argparse.ArgumentParser(description="Send/receive UDP locally")
- parser.add_argument('role', choices=choices, help='which role to play')
- parser.add_argument('-p', metavar='PORT', type=int, default=1060,
- help='UDP port (default 1060)')
- args = parser.parse_args()
- function = choices[args.role]
- function(args.p)
Advertisement
Add Comment
Please, Sign In to add comment