Python_PyQt5 Getting Started Serie 1: Lectura y escritura de edición de líneas (informática en segundo plano)
Capturas de pantalla generadas por el programa:
#La siguiente es la creación de la interfaz gráfica GUI.
Importar QtCore, QtGui, QtWidgets desde pyqt 5
Desde mathimport *
Clase Ui_MainWindow (objeto):
def setupUi(self , ventana principal):
ventana principal. establecer nombre de objeto(" ventana principal ")
Ventana principal resize(800, 599)
self.centralwidget. = QtWidgets. QWidget(ventana principal)
self .widget central. Establecer nombre de objeto("widget central")
self.label_2 = QtWidgets. QLabel(self.centralwidget)
self etiqueta _ 2 . establecer geometría (Qt core. QRect(70, 90, 41, 16))
self conjunto. nombre del objeto(" etiqueta _ 2 ")
self.label_5 = QtWidgets. QLabel(self.centralwidget)
self etiqueta _ 5 . establecer geometría (Qt core. QRect(70, 150, 41, 9))
self conjunto. nombre del objeto(" etiqueta _ 5 ")
self.label_6 = QtWidgets. QLabel(self.centralwidget)
self etiqueta _ 6 . establecer geometría (Qt core. QRect(50, 230, 41, 9))
self conjunto. nombre del objeto(" etiqueta _ 6 ")
self.label_3 = QtWidgets. QLabel(self.centralwidget)
self .etiqueta _ 3 . establecer geometría (Qt core. QRect(270, 90, 41, 16))
self establecer . nombre del objeto(" etiqueta _ 3 ")
self.label_7 = QtWidgets. QLabel(self.centralwidget)
self etiqueta _ 7 . establecer geometría (Qt core. QRect(270, 150, 41, 9))
self conjunto. nombre del objeto(" etiqueta _ 7 ")
self.lineEdit = QtWidgets. QLineEdit(self.centralwidget)
edición de línea propia (Qt core.
QRect(50, 110, 71, 31))
self.edición de línea. establecer nombre de objeto("edición de línea")
self.lineEdit_2 = QtWidgets. QLineEdit(self.centralwidget)
self .edición de línea _ 2 . conjunto de geometría(Qt core. QRect(50, 170, 71, 31))
self . .set nombre de objeto(" edición de línea _ 2 ")
self.lineEdit_3 = QtWidgets. QLineEdit(self.centralwidget)
self .edición de línea _ 3 . conjunto de geometría(Qt core. QRect(250, 110, 71, 31))
self . establecer nombre de objeto(" edición de línea _ 3 ")
self.lineEdit_4 = QtWidgets. QLineEdit(self.centralwidget)
self .edición de línea _ 4 . conjunto de geometría(Qt core. QRect(250, 170, 71, 31))
self . establecer nombre de objeto(" edición de línea _ 4 ")
self.lineEdit_5 = QtWidgets. QLineEdit(self.centralwidget)
self .edición de línea _ 5 . conjunto de geometría(Qt core. QRect(80, 220, 71, 31))
self . .set nombre de objeto(" edición de línea _ 5 ")
self.pushButton = QtWidgets. Botón q (self. centralwidget)
botón self . (" botón pulsador ")
ventana principal . setcentralwidget(self . centralwidget)
self.menubar = QtWidgets. Barra de menú (ventana principal)
self .establecer geometría(Qt core. QRect(0, 0, 800, 18))
establecer nombre de objeto(". menubar ")
ventana principal . setmenubar(self . menubar)
self. statusbar = QtWidgets.
QStatusBar(ventana principal)
self .establecer nombre de objeto(" barra de estado ")
ventana principal establecebarra de estado(self . barra de estado)
self.retranslateUi(ventana principal)
self. Pulsador pulsado. connect(self.btnshanbing _ click)
QtCore. QMetaObject.connectSlotsByName(ventana principal)
Definir interfaz de retraducción (auto, ventana principal):
_translate = QtCore. QCoreApplication.translate
MainWindow . setwindowtitle(_ traducir(" ventana principal ", " ventana principal "))
self . settext(_ traducir("ventana principal" . , "Longitud"))
self . settext(_ traducir("Ventana principal", "Longitud"))
self . traducir("Ventana principal", "Distancia"))
self etiqueta _ 3 . settext(_ traducir("Ventana principal", "Longitud"))
self . _ 7. settext(_ traducir("Ventana principal", "Longitud"))
botón pulsador . settext(_ traducir("Ventana principal", "Aceptar"))
#La siguiente es la función de ranura de la señal btnshanbing_click.
def btnshanbing_click(self):
# Lo siguiente es leer el contenido del cuadro de texto y convertir el tipo interno en un tipo de punto flotante.
a=float(self.lineEdit.text())
c=float(self.lineEdit_2.text())
b=float(self .lineEdit_3.text())
d=float(self.lineEdit_4.text())
#La siguiente es la fórmula de cálculo para la latitud y la longitud
e =(acos (sin(b * pi/180)* sin(d * pi/180)+cos(c * pi/180-a * pi/180)* cos(b * pi/180)* cos( d * pi/180 ))* 637104
#El siguiente es el resultado del cálculo generado en LineEdit_5, pero debe tenerse en cuenta que el resultado del cálculo debe convertirse a un tipo de carácter; de lo contrario, el programa no se ejecutará.
self.lineEdit_5.setText(str(e))
Programa principal:
Self.lineEdit.text(): Lee el contenido del cuadro de texto. , pero debe convertirse a float(self.lineEdit .text()), de lo contrario no se puede realizar el cálculo
Self.lineEdit_5.setText(str()): el resultado del cálculo generado en otro cuadro de texto debe se convertirá a tipo de carácter; de lo contrario, el programa informará un error
Para resumir: el tipo de retorno de lineEdit.text() es texto
.