Russian Qt Forum

Qt => Вопросы новичков => Тема начата: izumov от Декабрь 03, 2022, 18:32



Название: Как в QLineEdit добавить слот?
Отправлено: izumov от Декабрь 03, 2022, 18:32
Можно ли это сделать в графическом дизайнере? Или только редактирование кода позволяет это сделать. Что и в каком файле надо прописать ? Сейчас есть
файл mainwindow.cpp с текстом
#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}
и файл main.cpp с текстом

#include "mainwindow.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    return a.exec();

}

еще есть файл формы mainwindow.ui,но система не дает его редактировать в текстовом режиме пишет что редактировать можно только в режиме дизайнера.В форме есть кнопка Mybutton и поле редактирования  QLineEdit MyEdit.Я хочу передать сигнал нажатия кнопки на новый слот чтобы он отобразил запрограммированный мной текст.




Название: Re: Как в QLineEdit добавить слот?
Отправлено: kambala от Декабрь 03, 2022, 19:26
в режиме дизайнера есть специальный режим редактирования сигналов-слотов, кажется через F4 активируется (в тулбаре есть кнопочка соответствующая): там можно соединять сигналы одних объектов со слотами других или просто создавать свои слоты через двойной клик. В контекстном меню объекта кажется тоже есть эта возможность.


Название: Re: Как в QLineEdit добавить слот?
Отправлено: izumov от Декабрь 03, 2022, 20:16
Не получается добавить новый слот в МyEdit . Двойные щелчки по нему в дизайнере вызывают только его выбор. Контекстное меню раскрывает дерево существующих слотов. Двойной щелчек в редакторе слотов приводит к выпадению из выпадающего списка имеющиеся слоты.


Название: Re: Как в QLineEdit добавить слот?
Отправлено: kambala от Декабрь 03, 2022, 21:23
правой кнопкой на объект — go to slot — выбрать нужный сигнал — будет автоматически создан слот в коде

подробно о режиме редактирования сигналов: https://doc.qt.io/qt-6/designer-connection-mode.html


Название: Re: Как в QLineEdit добавить слот?
Отправлено: izumov от Декабрь 08, 2022, 13:35
по команде go to slot я перехожу в выпадающий списокс фиксированным содержимым привожу в прикрепленном скрин-шоте-слоты предопределенные как добавить пользовательский слот?


Название: Re: Как в QLineEdit добавить слот?
Отправлено: kambala от Декабрь 08, 2022, 14:35
это сигналы. выбери один из них и нажми ОК — это создаст слот-обработчик сигнала в твоем коде.