Нужно написать Программу «чат»
Программа клиента, Программа сервера.
С интерфейсом (Элементы ввода и вывода текста использование трех кнопок, 4 label, бегунки, изображения, radio button^ check button, меню) В меню предусмотреть инструкцию пользователя
Python

19 Апр 2020 в 19:42
163 +1
0
Ответы
1

Пример программы для клиента:

import socket
import tkinter as tk
def send_message(event=None):
message = entry_msg.get()
client_socket.send(message.encode('utf-8'))
entry_msg.delete(0, tk.END)
def receive_message():
while True:
message = client_socket.recv(1024).decode('utf-8')
text_chat.config(state=tk.NORMAL)
text_chat.insert(tk.END, message+'\n')
text_chat.config(state=tk.DISABLED)
text_chat.see(tk.END)
HOST = 'localhost'
PORT = 5555
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect((HOST, PORT))
root = tk.Tk()
root.title('Chat Client')
root.geometry('400x400')
text_chat = tk.Text(root, state=tk.DISABLED)
text_chat.pack(fill=tk.BOTH, expand=True)
entry_msg = tk.Entry(root)
entry_msg.pack(fill=tk.X, side=tk.LEFT, expand=True)
btn_send = tk.Button(root, text='Send', command=send_message)
btn_send.pack(side=tk.RIGHT)
entry_msg.bind('<Return>', send_message)
receive_thread = threading.Thread(target=receive_message)
receive_thread.start()
root.mainloop()

Пример программы для сервера:

import socket
import threading
def handle_client(client_socket, address):
while True:
message = client_socket.recv(1024).decode('utf-8')
for client in clients:
if client != client_socket:
client.send(message.encode('utf-8'))
HOST = 'localhost'
PORT = 5555
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind((HOST, PORT))
server_socket.listen()
clients = []
while True:
client_socket, address = server_socket.accept()
clients.append(client_socket)
client_thread = threading.Thread(target=handle_client, args=(client_socket, address))
client_thread.start()

Обратите внимание, что это только примеры программ и не включают в себя все элементы пользовательского интерфейса, которые были вами указаны. Необходимо доработать программы с учетом интерфейса пользователя и добавить соответствующие элементы управления.

18 Апр в 13:39
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 648 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир