QT6 QLabel, LCD

QLabel 

 Класс QLabel используется для отображения сообщений и изображений,  

 

 Импорт QLabel  

 Создание объекта класса QLabel 

 Применение методов класса к переменной 

 

 from PyQt6.QtWidgets import QApplication, QWidget, QLabel

import sys 

 

class Window(QWidget): 

 def __init__(self): 

 super().__init__() 

 self.setGeometry(200,200, 700, 400) 

 self.setWindowTitle("Python GUI Development") 

 label = QLabel("", self)

 label.setText('first text in label')

 

app = QApplication(sys.argv) 

window = Window() 

window.show() 

sys.exit(app.exec()) 

 Для создания метки с изображением текст не передается  

 label = QLabel(self) 

 Таблица методов: 

 

 

 

 Метод 

 Назначение 

 

 

 

 

 setText() 

 Устанавливается новый текст метки 

 

 

 setNum() 

 добавляет целое или двойное значение 

 

 

 clear() 

 удаляет текст 

 

 

 setMovie() 

 

 установки изображения gif 

 movie = QMovie('images/sky.gif')  movie.setSpeed(500)  label.setMovie(movie)  movie.start() 

 

 

 

 setFont() 

 Изменения шрифта, setFont() ожидает класс QFont, (потомок QtGui)  label.setFont(QFont("Sanserif", 15)) 

 

 

 label.setStyleSheet() 

 

 Изменение цвета шрифта 

 label.setStyleSheet('color:red') 

 

 

 

 Добавление изображения 

 

 

 

 

 

 setPixamp() 

 pixmap = QPixmap('images/python.png')  label.setPixmap(pixmap)  

 

 

 QImage, QBitmap QPicture 

 

 

 

 

 QLCDNumber 

 Класс для отображения 7-сегментного дисплея, отображает 5 (пять) 8- 10- 16- ричных элементов.  

 class Window(QWidget):

 def __init__(self):

 super().__init__()

 self.setGeometry(200,200, 700, 400)

 self.setWindowTitle("Python GUI Development")

 self.timer = QTimer()

 self.timer.timeout.connect(self.update_lcd)

 self.timer.start(1000)

 self.create_button()

 def create_button(self):

 vbox = QVBoxLayout()

 self.lcd = QLCDNumber()

 self.lcd.setStyleSheet('background:red')

 vbox.addWidget(self.lcd)

 time = QTime.currentTime()

 text = time.toString('hh:mm')

 self.lcd.display(text)

 self.setLayout(vbox)

 def update_lcd(self):

 time = QTime.currentTime()

 text = time.toString('hh:mm')

 self.lcd.display(text) 

 

  