Как получить текст из qlineedit pyqt5
Шаг 104.
Библиотека PyQt5. Основные компоненты. Однострочное текстовое поле. Основные методы и сигналы
На этом шаге мы начнем перечислять основные методы и сигналы .
setText (< Текст >) — помещает указанный текст в поле. Метод является слотом;
- Normal ( или 0) — показывать символы как они были введены;
- NoEcho ( или 1) — не показывать вводимые символы;
- Password ( или 2) — вместо символов выводить звездочки (*);
- PasswordEchoOnEdit ( или 3) — показывать символы при вводе, а после потери фокуса вместо них отображать звездочки (*);
lineEdit = QtWidgets.QLineEdit() arr = ["кадр", "каменный", "камень", "камера"] completer = QtWidgets.QCompleter(arr, parent=window) lineEdit.setCompleter(completer)
На следующем шаге мы закончим изучение этого вопроса .
Как получить текст из QLineEdit
Мне необходимо достать из QLineEdit текст и узнать его длину. Пробовала вызывать len(QLineEdit) , но выдаёт ошибку, подскажите как сделать.
Отслеживать
73.6k 110 110 золотых знаков 38 38 серебряных знаков 55 55 бронзовых знаков
задан 15 ноя 2020 в 12:37
23 1 1 серебряный знак 3 3 бронзовых знака
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Узнать длину lineEdit :
len(self.lineEdit.text())
Динамический это выглядит так:
import sys from PyQt5.QtWidgets import * class Widget(QWidget): def __init__(self): super().__init__() self.label = QLabel() self.lineEdit = QLineEdit() self.lineEdit.textEdited.connect(self.my_slot_function) lay = QVBoxLayout(self) lay.addWidget(self.lineEdit) lay.addWidget(self.label) def my_slot_function(self, text): self.label.setText(f'Длина строки: ') # print(len(self.lineEdit.text())) if __name__ == '__main__': app = QApplication(sys.argv) w = Widget() w.show() sys.exit(app.exec_())
Как получить текст из QLineEdit ( PyQt5 )?
Я создал окошко с кнопкой и QLineEdit, мне нужно при нажатии на кнопку, чтобы проверился текст в QLinwEdit и если он , например равен 123, то сделать так чтобы появилось диалоговое окно. Помогите пожалуйста.
- Вопрос задан более трёх лет назад
- 19355 просмотров
Комментировать
Решения вопроса 1
Сергей Горностаев @sergey-gornostaev Куратор тега Python
Седой и строгий
# -*- encoding: utf-8 -*- import sys from PyQt5.QtCore import pyqtSlot from PyQt5.QtWidgets import (QMainWindow, QApplication, QWidget, QPushButton, QAction, QLineEdit, QMessageBox) class App(QMainWindow): def __init__(self): super().__init__() self.title = 'Тест' self.left = 200 self.top = 200 self.width = 400 self.height = 140 self.initUI() def initUI(self): self.setWindowTitle(self.title) self.setGeometry(self.left, self.top, self.width, self.height) self.textbox = QLineEdit(self) self.textbox.move(20, 20) self.textbox.resize(280, 40) self.button = QPushButton('Показать', self) self.button.move(20, 80) self.button.clicked.connect(self.on_click) self.show() @pyqtSlot() def on_click(self): textboxValue = self.textbox.text() QMessageBox.question(self, 'Введено', textboxValue, QMessageBox.Ok, QMessageBox.Ok) self.textbox.setText("") if __name__ == '__main__': app = QApplication(sys.argv) ex = App() sys.exit(app.exec_())
Ответ написан более трёх лет назад
Нравится 5 5 комментариев
Виджеты в PyQt5 (часть 2)

Мы обсудим QPixmap, QLineEdit, QSplitter и QComboBox.
QPixMap
QPixMap – это один из виджетов, использующихся для работы с изображениями. Он оптимизирован для показа изображений на экране. В приведенном ниже примере, мы будем использовать QPixMap для того, чтобы показать изображение в окне.
В нашем примере, мы показываем изображение в окне.
Мы создали объект QPixMap.
Мы поместили изображение в виджет QLabel.
QLineEdit
QLineEdit – это виджет, который разрешает вводить и редактировать одну строку текста. Для этого виджета доступны функции «Отменить» и «Повторить», «Вырезать» и «Вставить», а также функция «перетаскивания».
Этот пример показывает виджет строки редактирования и метку. Текст, который мы вбиваем в строку редактирования, немедленно отображается в виджете метки.
Создается виджет QLineEdit.
Если текст в виджете редактирования строки меняется, мы вызываем метод onChanged().
Внутри метода onChanged, мы устанавливаем напечатанный текст в виджет метки. Мы вызываем метод adjustSize(), чтобы менять размер метки соответственно длине текста.
QSplitter
QSplitter позволяет пользователю контролировать размер виджетов путём перетаскивания границы между ними. В нашем примере, мы показываем три виджета QFrame, организованные с двумя разделителями.
В нашем примере, мы имеем три виджета фрейма и два разделителя. Обратите внимание, что в некоторых темах оформления, разделители могут не быть хорошо видимыми.
Для того, чтобы видеть границы между виджетами QFrame, мы используем стилизованный фрейм.
Мы создаём виджет QSplitter и добавляем в него два виджета.
К тому же, мы можем добавить разделитель к ещё одному виджету разделителя.
QComboBox
QComboBox – это виджет, который позволяет пользователю выбирать из списка вариантов (выпадающий список).
Пример показывает QComboBox и QLabel. Блок со списком имеет список из пяти вариантов. Это имена дистрибутивов Linux. Виджет метки показывает выбранный вариант.
Мы создаём виджет QComboBox с пятью вариантами.
После выбора пункта, мы вызываем метод onActivated().
Внутри метода, мы устанавливаем текст выбранного пункта в виджет метки. Мы приспосабливаем размер метки, как в прошлом примере.
В этой части руководства PyQt5, мы рассмотрели другие четыре виджета PyQt5.
Для вставки кода на Python в комментарий заключайте его в теги
- Модуль csv - чтение и запись CSV файлов
- Создаём сайт на Django, используя хорошие практики. Часть 1: создаём проект
- Онлайн-обучение Python: сравнение популярных программ
- Книги о Python
- GUI (графический интерфейс пользователя)
- Курсы Python
- Модули
- Новости мира Python
- NumPy
- Обработка данных
- Основы программирования
- Примеры программ
- Типы данных в Python
- Видео
- Python для Web
- Работа для Python-программистов
- Сделай свой вклад в развитие сайта!
- Самоучитель Python
- Карта сайта
- Отзывы на книги по Python
- Реклама на сайте