def save(self, file_name, row): """ Скачать что-то с сервера """ try: path: str = filedialog.askdirectory( initialdir="/home/snorcros", title="Select a dir for download", mustexist=1) if path: progressbar = Progressbar(self, orient='horizontal', length=150, mode='indeterminate') progressbar.grid(row=row, column=4) progressbar.config(maximum=100, value=0) save_thread = threading.Thread(target=self.client.save, args=(file_name, path)) save_thread.start() progressbar.start(interval=50) while save_thread.is_alive(): self.master.update_idletasks() time.sleep(0.05) progressbar.stop() progressbar.destroy() ft_done("File " + file_name + " was download to " + path) except ConnectionResetError: ft_error("Server died :c") self.disconnect() except Exception as e: ft_error(e)
def load_to_serv(self): """ Загрузить что-то на сервер """ try: file_name: str = filedialog.askopenfilename( initialdir="/home/snorcros", title="Select a File", filetypes=(("Text files", "*.txt*"), ("all files", "*.*"))) if file_name: print(file_name) progressbar = Progressbar(self, orient='horizontal', length=200, mode='indeterminate') progressbar.grid(row=2, column=2) progressbar.config(maximum=100, value=0) load_thread = threading.Thread(target=self.client.load, args=(file_name, )) load_thread.start() progressbar.start(interval=50) while load_thread.is_alive(): self.master.update_idletasks() time.sleep(0.05) file_name = file_name.split(sep='/')[-1] progressbar.stop() progressbar.destroy() ft_done("File " + file_name + " was load to server") self.add_file_to_root(file_name) except ConnectionResetError: ft_error("Server died :c") self.disconnect() except Exception as e: ft_error(e)
def __init__(self, master, async_loop): Frame.__init__(self, master) self.async_loop = async_loop Frame.configure(self) self.master = master self.master.protocol("WM_DELETE_WINDOW", self.on_closing) self.file_widgets = [] self.current_row = 3 self.client = None menu = Menu(self) menu.add_command(label='Upload to server', command=self.load_to_serv) self.master.config(menu=menu) from frames.StartPage import TCP_IP from frames.StartPage import TCP_PORT info = "IP: " + str(TCP_IP) + "\tPORT: " + str(TCP_PORT) Label(self, text=info).grid(row=1, column=1) Button(self, text="Disconnect", command=self.disconnect).grid(row=1, column=2) Button(self, text="Upload to server", command=self.load_to_serv).grid(row=2, column=1) try: self.client = Client(TCP_IP, TCP_PORT) files = self.client.get_name_files() self.add_file_rows_to_root(files) except ConnectionRefusedError: raise ConnectionRefusedError except ConnectionResetError: ft_error("Server died :c") self.disconnect() except Exception as e: ft_error(e)
def __init__(self, master, async_loop): Frame.__init__(self, master) self.async_loop = async_loop Frame.configure(self) self.master = master self.master.protocol("WM_DELETE_WINDOW", self.on_closing) self.file_widgets = [] self.current_row = 3 self.client = None menu = Menu(self) # menu.add_command(label='Upload to server', command=self.load_to_serv) self.master.config(menu=menu) from frames.StartPage import ADR_SRC from frames.StartPage import ADR_DEST info = "Sender Address: " + str(ADR_SRC) + "\tDestination Address: " + str(ADR_DEST) Label(self, text=info).grid(row=1, column=1) do_ip_callback = functools.partial(do_ip_package, "First_package", ADR_SRC, ADR_DEST) Button(self, text="Do IP Package", command=do_ip_callback).grid(row=1, column=2) try: a = 0 # self.client = Client(ADR_SRC, ADR_DEST) # files = self.client.get_name_files() except Exception as e: ft_error(e)
def get_params(e1, e2, master): try: global TCP_IP, TCP_PORT TCP_IP = str(e1.get()) if re.fullmatch(r'(?:[0-9]{1,3}\.){3}[0-9]{1,3}', TCP_IP) is None: raise Exception("Invalid IP! IP must be like 127.0.0.1!") TCP_PORT = int(e2.get()) print(TCP_IP, TCP_PORT) master.switch_frame(PageOne) except ConnectionRefusedError: ft_error("Server is not available :c") except ValueError: ft_error("Invalid port! Port must be a number!") except Exception as e: ft_error(e)
def get_params(e1, e2, master): try: global ADR_SRC, ADR_DEST ADR_SRC = str(e1.get()) if re.fullmatch(r'(?:[0-9]{1,3}\.){3}[0-9]{1,3}', ADR_SRC) is None: raise Exception( "Invalid Sender Address! Address must be like 127.0.0.1!") ADR_DEST = str(e2.get()) if re.fullmatch(r'(?:[0-9]{1,3}\.){3}[0-9]{1,3}', ADR_DEST) is None: raise Exception( "Invalid Destination Address! Address must be like 127.0.0.1!") print(ADR_SRC, ADR_DEST) master.switch_frame(PageOne) except ConnectionRefusedError: ft_error("Server is not available :c") except ValueError: ft_error("Invalid port! Port must be a number!") except Exception as e: ft_error(e)