हम कर रहे हैं एक चैट आवेदन में अजगर का उपयोग कर PyQt5 लेकिन हम एक अंधी गली मारा जब की कोशिश करने के लिए हाइपरलिंक क्लिक करने योग्य में हमारे QPlainTextEdit जो हम उपयोग के लिए हमारे chatbox. हमारे उत्पादन है, सिर्फ एक सादे html टैग के बिना प्रकाश डाला.
chatbox = QPlainTextEdit()
chatbox.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
chatbox.setReadOnly(True)
chatbox.setBackgroundVisible(False)
chatbox.setStyleSheet("""
QPlainTextEdit{
background: rgba(255, 255, 255, 0.5);
}
""")
chatbox.setMaximumHeight(650)
chatbox.setMaximumWidth(self.screenShape.width()-50)
def handleMessage(self):
try:
message = self.chatline.text()
if message == "":
pass
else:
if message.startswith('http://') or message.startswith('https://'):
message = f'<a href=""{message}>{message}</a>'
message = f"{username}: {message}"
message.encode("utf-8")
s.sendall(message.encode())
self.chatline.setText("")
chatbox.linkActivated.connect(self.link)
chatWidget.update()
else:
message = f"{username}: {message}"
message.encode("utf-8")
s.sendall(message.encode())
self.chatline.setText("")
chatWidget.update()
except:
pass
def link(self, linkStr):
QDesktopServices.openUrl(QUrl(linkStr))