文章目录 [ 隐藏 ]
Pyqt 触发一个事件,打开外部链接,我找到了这个方法,供大家参考
PyQt5 打开外部链接的方法
1.Python 自带的webbrowser 浏览器控制模块
webbrowser提供了三种方法
1 2 3 4 |
import webbrowser webbrowser.open(url, new=0, autoraise=True) webbrowser.open_new(url) webbrowser.open_new_tab(url) |
2.部分控件的Link属性链接
Pyqt有几个控件带有 setOpenExternalLinks , 如 QTextLabel 、 QTextBrowser 等
当 setOpenExternalLinks 值为TURE 表示可通过html 添加 A 标签打开外部链接, 如设置:
1 2 |
self.label.setOpenExternalLinks(True) self.label.setText(_translate("MainWindow", "<html><head/><body><p><a href=\"http://www.paoquba.com\"><span style=\" text-decoration: underline; color:#0000ff;\">跑趣吧</span></a></p></body></html>", None)) |
实例代码
示例代码与效果:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# -*- coding: utf-8 -*- # # Created: Py40.com Feb 20 10:03:54 2017 # by: PyQt5 # from PyQt5.QtWidgets import QApplication, QWidget, QPushButton,QDesktopWidget,QLabel,QGridLayout import webbrowser,sys class Ui_MainWindow(QWidget): item_name = "PyQt打开外部链接" def __init__(self): super().__init__() self.initUI() def initUI(self): self.tips_1 = QLabel("网站:<a href='http://code.py40.com'>http://code.py40.com</a>"); self.tips_1.setOpenExternalLinks(True) self.btn_webbrowser = QPushButton('webbrowser效果', self) self.btn_webbrowser.clicked.connect(self.btn_webbrowser_Clicked) grid = QGridLayout() grid.setSpacing(10) grid.addWidget(self.btn_webbrowser, 1, 0) grid.addWidget(self.tips_1, 2, 0) self.setLayout(grid) self.resize(250, 150) self.setMinimumSize(266, 304); self.setMaximumSize(266, 304); self.center() self.setWindowTitle(self.item_name) self.show() def btn_webbrowser_Clicked(self): webbrowser.open('http://www.paoquba.com/') def center(self): qr = self.frameGeometry() cp = QDesktopWidget().availableGeometry().center() qr.moveCenter(cp) self.move(qr.topLeft()) if __name__ == "__main__": app = QApplication(sys.argv) a = Ui_MainWindow() sys.exit(app.exec_()) |
效果:
未经允许不得转载:Python在线学习 » Pyqt5 打开外部链接