2
0
mirror of https://github.com/pyqt/examples.git synced 2025-08-22 01:27:39 +00:00
examples/src/11 PyQt Thread example/01_single_threaded.py
九是否随意的称呼 83eed05145
Fixes for PyQt6 (#24)
2025-01-07 07:29:45 +01:00

37 lines
874 B
Python

from PyQt6.QtCore import *
from PyQt6.QtWidgets import *
from requests import Session
name = input("Please enter your name: ")
chat_url = "https://build-system.fman.io/chat"
server = Session()
# GUI:
app = QApplication([])
text_area = QPlainTextEdit()
text_area.setFocusPolicy(Qt.FocusPolicy.NoFocus)
message = QLineEdit()
layout = QVBoxLayout()
layout.addWidget(text_area)
layout.addWidget(message)
window = QWidget()
window.setLayout(layout)
window.show()
# Event handlers:
def display_new_messages():
new_message = server.get(chat_url).text
if new_message:
text_area.appendPlainText(new_message)
def send_message():
server.post(chat_url, {"name": name, "message": message.text()})
message.clear()
# Signals:
message.returnPressed.connect(send_message)
timer = QTimer()
timer.timeout.connect(display_new_messages)
timer.start(1000)
app.exec()