import sys from PyQt4.QtCore import * from PyQt4.QtGui import * from PyQt4.QtWebKit import * from PyQt4.QtNetwork import * class JendelaUtama(QMainWindow): def __init__(self, parent=None): super(JendelaUtama, self).__init__(parent) self.createMenu() # bikin menu self.websettings = QWebSettings #setting untuk browser web self.websettings = { 'JavascriptEnabled': True, 'AutoLoadImages': True} #widget untuk menampilkan halaman web: QWebView self.twitterView = QWebView(self) self.twitterView.load(QUrl('http://twitter.com/login')) self.setCentralWidget(self.twitterView) self.setWindowTitle("TwitBrow") self.connect (self.twitterView.page().networkAccessManager(), SIGNAL("sslErrors (QNetworkReply *, const QList &)"), self.sslErrorHandler) def createMenu(self): self.programMenu = self.menuBar().addMenu("&Program") self.bantuanMenu = self.menuBar().addMenu("&Bantuan") # bikin action (aksi yang akan dilakukan lewat menu) tentangAction = self.createAction("&Tentang Program", self.bantuanTentang) keluarAction = self.createAction("&Keluar", self.close) # tambahkan aksi ke menu self.bantuanMenu.addAction(tentangAction) self.programMenu.addAction(keluarAction) def createAction(self, text, slot=None, shortcut=None, icon=None, tip=None, checkable=False, signal="triggered()"): action = QAction(text, self) if icon is not None: action.setIcon(QIcon(":/%s.png" % icon)) if shortcut is not None: action.setShortcut(shortcut) if tip is not None: action.setToolTip(tip) action.setStatusTip(tip) if slot is not None: self.connect(action, SIGNAL(signal), slot) if checkable: action.setCheckable(True) return action def sslErrorHandler(self, reply, errorList): reply.ignoreSslErrors() print 'SSL errors ignored' def bantuanTentang(self): QMessageBox.about(self, "Tentang Program", '''TwitBrow, Twitter Browser, Hak Cipta, 2010, @bangmico''') if __name__=='__main__': twitbrow = QApplication(sys.argv) jendelaUtama = JendelaUtama() jendelaUtama.show() sys.exit(twitbrow.exec_())