• <转>用PyQt4打造一个简易浏览器


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

    支持JavaScript和CSS,Acid3浏览器兼容性测试能跑41分(IE 6才5分),地址如果没输全的话,会自动在前面加上http://

    参考了这篇文章:http://ogc-daily.blogspot.com/2009/04/pyqt-part-7.html

    界面:


    源代码如下(需要安装PyQt4):

    import sys
    from 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_())
  • 相关阅读:
    Spring Boot JDBC 使用教程
    Spring Boot FreeMarker 使用教程
    椭圆曲线ECC ECDH原理&& javacard实现
    java中的强制类型转换:int和byte
    JUnit学习
    java异常处理
    Maven使用
    哈希表问题
    计数排序
    链表Linked List
  • 原文地址:https://www.cnblogs.com/meetrice/p/2886814.html
Copyright © 2020-2023  润新知