博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
<转>用PyQt4打造一个简易浏览器
阅读量:6243 次
发布时间:2019-06-22

本文共 1486 字,大约阅读时间需要 4 分钟。

刚学PyQt4,发现Python的库实在太强大了,50行代码就能写出一个浏览器…

支持JavaScript和CSS,能跑41分(IE 6才5分),地址如果没输全的话,会自动在前面加上http://。
参考了这篇文章:
界面:
源代码如下(需要安装):

import sysfrom PyQt4.QtCore import *from PyQt4.QtGui import *from PyQt4.QtWebKit import *class MyBrowser(QWidget):    def __init__(self, parent = None):        super(MyBrowser, self).__init__(parent)        self.createLayout()        self.createConnection()    def search(self):        address = str(self.addressBar.text())        if address:            if address.find('://') == -1:                address = 'http://' + address            url = QUrl(address)            self.webView.load(url)    def createLayout(self):        self.setWindowTitle("keakon's browser")        self.addressBar = QLineEdit()        self.goButton = QPushButton("&GO")        bl = QHBoxLayout()        bl.addWidget(self.addressBar)        bl.addWidget(self.goButton)        self.webView = QWebView()        layout = QVBoxLayout()        layout.addLayout(bl)        layout.addWidget(self.webView)        self.setLayout(layout)    def createConnection(self):        self.connect(self.addressBar, SIGNAL('returnPressed()'), self.search)        self.connect(self.addressBar, SIGNAL('returnPressed()'), self.addressBar, SLOT('selectAll()'))        self.connect(self.goButton, SIGNAL('clicked()'), self.search)        self.connect(self.goButton, SIGNAL('clicked()'), self.addressBar, SLOT('selectAll()'))app = QApplication(sys.argv)browser = MyBrowser()browser.show()sys.exit(app.exec_())

 

转载地址:http://jupia.baihongyu.com/

你可能感兴趣的文章
Android 封装http请求的工具类
查看>>
黑书上的DP例题
查看>>
每天一个新标签/方法/属性/兼容性/问题
查看>>
《Linux内核设计与实现》读书笔记(九)- 内核同步介绍
查看>>
Delphi-IOCP 共同学习研究群号 320641073
查看>>
sql2008中已存在已有数据表修改主键为自增不让更改的解决方案
查看>>
控件路径自定义控件遇到的两个小问题
查看>>
【BZOJ】2648: SJY摆棋子 & 2716: [Violet 3]天使玩偶(kdtree)
查看>>
数据仓库与数据挖掘的一些基本概念
查看>>
Android学习系列(23)--App主界面实现
查看>>
jquery validate的漂亮css样式验证
查看>>
OAF_解决OAF与Windows版本不兼容黑屏
查看>>
如何让编码更加的标准
查看>>
阿里云收集服务器性能指标的python脚本
查看>>
Docker源码分析(一):Docker架构
查看>>
Android开发之在子线程中使用Toast
查看>>
(第三天)函数
查看>>
Git 学习笔记--Git下的冲突解决
查看>>
poj 2955 Brackets(区间dp)
查看>>
jQuery选中该复选框来实现/全部取消/未选定/获得的选定值
查看>>