PASO 1: Crear la primera interfaz gráfica y convertir de .ui a .py. Esta interfaz es para escoger si quiero ver un mapa o una imágen.
Se hace la conversión del archivo ejemplo.ui a ejemplo.py
ejemplo.py
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 | # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'ejemplo.ui' # # Created by: PyQt4 UI code generator 4.11.4 # # WARNING! All changes made in this file will be lost! from PyQt4 import QtCore, QtGui try: _fromUtf8 = QtCore.QString.fromUtf8 except AttributeError: def _fromUtf8(s): return s try: _encoding = QtGui.QApplication.UnicodeUTF8 def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig, _encoding) except AttributeError: def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig) class Ui_Dialog(object): def setupUi(self, Dialog): Dialog.setObjectName(_fromUtf8("Dialog")) Dialog.resize(233, 129) self.pushButton = QtGui.QPushButton(Dialog) self.pushButton.setGeometry(QtCore.QRect(40, 30, 141, 23)) self.pushButton.setObjectName(_fromUtf8("pushButton")) self.pushButton_2 = QtGui.QPushButton(Dialog) self.pushButton_2.setGeometry(QtCore.QRect(40, 60, 141, 23)) self.pushButton_2.setObjectName(_fromUtf8("pushButton_2")) self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog) def retranslateUi(self, Dialog): Dialog.setWindowTitle(_translate("Dialog", "Dialog", None)) self.pushButton.setText(_translate("Dialog", "MAPA", None)) self.pushButton_2.setText(_translate("Dialog", "IMAGEN", None)) |
PASO 2: La segunda interfaz gráfica la vamos a tomar de un ejercicio que se hizo anteriormente en el blog (míralo acá: Es el PASO 1). Pero esta vez vamos a modificar el código para activar el botón REGRESAR. Además se debe importar la función de browser que también se encuentra en el ejercicio del link de este paso.
codigo_mapa.py
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 | #!/usr/bin/python # -*- coding: utf-8 -*- ''' Código creado por: Gibson Sneyder Ramírez Moreno correo: sramirez.udea@gmail.com http://pythoninicios.blogspot.com.co/ ''' import sys from mapa import * from PyQt4.QtGui import QApplication from PyQt4.QtCore import QUrl from PyQt4.QtWebKit import QWebView import browser import subventanas class showmap(QtGui.QDialog): def __init__(self,parent=None): QtGui.QWidget.__init__(self,parent) QWebView.__init__(self) self.ui = Ui_Dialog() self.ui.setupUi(self) QtCore.QObject.connect(self.ui.pushButton, QtCore.SIGNAL('clicked()'),self.calcular) QtCore.QObject.connect(self.ui.pushButton_3, QtCore.SIGNAL('clicked()'),self.regresar) QtCore.QObject.connect(self.ui.pushButton_2, QtCore.SIGNAL('clicked()'),self.salir) def calcular(self): latitud=self.ui.lineEdit.text() longitud=self.ui.lineEdit_2.text() html=browser.localizacion(latitud,longitud) self.ui.webView.setHtml(html) def regresar(self): self.close() atras=subventanas.sunw().exec_() def salir(self): self.close() if __name__== "__main__": app=QtGui.QApplication(sys.argv) myapp = showmap() myapp.show() sys.exit(app.exec_()) |
codigo_foto.py
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 | #!/usr/bin/python # -*- coding: utf-8 -*- ''' Código creado por: Gibson Sneyder Ramírez Moreno correo: sramirez.udea@gmail.com http://pythoninicios.blogspot.com.co/ ''' import sys from foto import * from PyQt4.QtGui import QApplication from PyQt4.QtCore import QUrl from PyQt4.QtWebKit import QWebView import subventanas class showmap(QtGui.QDialog): def __init__(self,parent=None): QtGui.QWidget.__init__(self,parent) QWebView.__init__(self) self.ui = Ui_Dialog() self.ui.setupUi(self) QtCore.QObject.connect(self.ui.pushButton, QtCore.SIGNAL('clicked()'),self.mostrar) QtCore.QObject.connect(self.ui.pushButton_3, QtCore.SIGNAL('clicked()'),self.regresar) QtCore.QObject.connect(self.ui.pushButton_2, QtCore.SIGNAL('clicked()'),self.salir) def mostrar(self): imagen=self.ui.lineEdit.text() self.ui.webView.load(QUrl(imagen)) def regresar(self): self.close() atras=subventanas.sunw().exec_() def salir(self): self.close() if __name__== "__main__": app=QtGui.QApplication(sys.argv) myapp = showmap() myapp.show() sys.exit(app.exec_()) |
subventanas.py
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 | #!/usr/bin/python # -*- coding: utf-8 -*- ''' Código creado por: Gibson Sneyder Ramírez Moreno correo: sramirez.udea@gmail.com http://pythoninicios.blogspot.com.co/ ''' import sys from ejemplo import * import codigo_mapa import codigo_foto class sunw(QtGui.QDialog): def __init__(self,parent=None): QtGui.QWidget.__init__(self,parent) self.ui = Ui_Dialog() self.ui.setupUi(self) QtCore.QObject.connect(self.ui.pushButton, QtCore.SIGNAL('clicked()'),self.mapa) QtCore.QObject.connect(self.ui.pushButton_2, QtCore.SIGNAL('clicked()'),self.imagen) def mapa(self): self.close() ventana_mapa=codigo_mapa.showmap().exec_() def imagen(self): self.close() ventana_image=codigo_foto.showmap().exec_() if __name__== "__main__": app=QtGui.QApplication(sys.argv) myapp = sunw() myapp.show() sys.exit(app.exec_()) |
Para esta entrada voy a mostrar un video para mostrar su funcionamiento. Muchas gracias. Alguna duda estaré atento.
No hay comentarios.:
Publicar un comentario