minimum = a if a < b else b
print(minimum, maximum)
10 20
ЛЕКЦИЯ 3 – ОСНОВНЫЕ КОМПОНЕНТЫ PYQT5
3.1 QWidget и QDialog
Окно
self.setWindowTitle('Создание простейшей визуальной программы')
self.setWindowIcon(QtGui.QIcon('images/logo.png'))
class Main(QWidget) или class Main(QDialog)
…
app = QApplication(sys.argv)
window = Main()
window.show()
sys.exit(app.exec_())
3.2 QPushButton
Кнопка
def solve(self):
…
self.btn_solve.clicked.connect(self.solve)
3.3 QLabel
Текстовая метка
self.label_img.setPixmap(QPixmap('images/main.png'))
self.label_img.setScaledContents(True)
self.label_answer.setText('Ответ: ' + str(format(answer, '.12f')))
print (QtGui.QtextDocument(self.label_answer.text()).toPlainText())
3.4 QLineEdit
Текстовое поле для ввода/вывода
a = self.lineEdit_a.text()
self.lineEdit_a.setText('')
3.5 Практический пример
Вид при использовании QWidget
Вид при использовании QDialog
import sys
from PyQt5 import QtGui
from PyQt5.QtGui import QPixmap
from PyQt5.QtWidgets import *
from PyQt5.uic import loadUi
class Main(QDialog):
def __init__(self):
super(Main, self).__init__()
loadUi('uis/main.ui', self) # загрузка формы в py-скрипт
self.setWindowTitle('Создание простейшей визуальной '
'программы на Python')
self.setWindowIcon(QtGui.QIcon('images/logo.png'))
self.label_img.setPixmap(QPixmap('images/main.png'))
self.label_img.setScaledContents(True)
self.btn_solve.clicked.connect(self.solve) # Связь кнопки с методом
self.btn_clear.clicked.connect(self.clear) # Связь кнопки с методом
self.btn_exit.clicked.connect(self.exit) # Связь кнопки с методом
def solve(self):