Перейти к содержимому

Как получить текст из qlineedit pyqt5

  • автор:

Как получить текст из 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)

Python 3 логотип

Мы обсудим 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
  • Реклама на сайте

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *