@ilyavii
Программист начального уровня)

Как обрабатывать события в Qt?

Привет! Недавно перешел на Qt creator, и начал его подробно изучать. И тут сразу задался вопросом "А, как обрабатывать события?". В Google ничего толком и не нашел и решил спросить тут...
Подскажите, каким образом можно обрабатывать события в Qt? Например нажатие на кнопку?
И еще один вопрос. Как обращаться к другим компонентам, находящимся на форме? Например, "if( TextField.text == 'Hi') Text.text = 'Hi!'
  • Вопрос задан
  • 1901 просмотр
Решения вопроса 1
@Mercury13
Программист на «си с крестами» и не только
Вы, разумеется, орудуете встроенным в Qt Creator редактором форм…
1. Визуально: ПКМ, Go to slot…
Программно: функцией connect, это описал AtomKrieg.
2. Все компоненты находятся в доп. объекте ui. Когда вы делаете форму программно, им не обязательно там быть, но редактор форм делает именно так.
if (ui->textEdit->text() == "Hi") label->setText("Hi!");
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
AtomKrieg
@AtomKrieg
Давай я поищу в Google за тебя
Почитайте книжку Шлее или официальную справку по слотам-сигналам doc.qt.io/qt-4.8/signalsandslots.html

Как обращаться к другим компонентам, находящимся на форме? Например, "if( TextField.text == 'Hi') Text.text = 'Hi!'

Цепляйте слот на сигнал doc.qt.io/qt-5/qlineedit.html#textChanged и в нем уже прописываете ваш под по входному параметру const QString &text
Если класс QTextEdit, в обработчике смотрите в текст из doc.qt.io/qt-4.8/qtextedit.html#plainText-prop
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы