Python QMessageBox换行符'\n'和链接失效

4

我有一个QMessageBox,想在新的一行上创建一个链接。但是当我使用 \n 时,无法使链接正常工作。

link = "www.google.com"
msg = "This works: <a href='%s'>Google</a>" % link
reply = QMessageBox.information(self, 'Message', msg, QMessageBox.Ok, QMessageBox.Ok)

msg = "This does not work: \n<a href='%s'>Google</a>" % link
reply = QMessageBox.information(self, 'Message', msg, QMessageBox.Ok, QMessageBox.Ok)

我希望您能让第二个示例正常运行。
1个回答

4
如果您使用HTML格式,换行符没有特殊含义 - 它只是空格和其他任何内容一样,并且被折叠为单个空格 实际上,它似乎会扰乱HTML自动检测器,导致回退到纯文本。无论如何,要将链接放在单独的一行上,请使用<br>换行标签,或使用<p>标签将两行放在不同的段落中。
msg = "This works as well:<br><a href='%s'>Google</a>" % link
reply = QMessageBox.information(self, 'Message', msg, QMessageBox.Ok, QMessageBox.Ok)

demo dialog with newline working


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接