11 / 11 / 6
Регистрация: 03.04.2011
Сообщений: 631
1

Вызов функции из одного класса кнопкой из другого класса

12.12.2014, 04:57. Показов 3430. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток.
Помогите разобраться с сигналами и слотами. Уже устал перечитывать не могу до конца понять один момент.
У меня создана форма класса
C++ (Qt)
1
2
3
MainWindow1::MainWindow1(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow1)
В нем в заголовочном файле прописан слот
C++ (Qt)
1
2
3
private slots:
    
void prostoSlot();
описал его содержимое в MainWindow1.сpp
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void MainWindow1:: prostoSlot()
{
    nomenclatura = new QSqlTableModel(this);
        nomenclatura->setTable("nomenklatura");
        // передаем данные из модели в tableView
        ui->tableView->setModel(nomenclatura);
        // устанавливаем высоту строки по тексту
        ui->tableView->resizeRowsToContents();
        ui->tableView->setColumnHidden(0,true);// скрываем первое поле с id
        // шапки для колонок
        nomenclatura->setHeaderData(1, Qt::Horizontal, tr("Код товара"));
        nomenclatura->setHeaderData(2, Qt::Horizontal, tr("Наименование позиции"));
        nomenclatura->setHeaderData(3, Qt::Horizontal, tr("Цена за 1 шт"));
        ui->tableView->setColumnWidth(2, 400 ); //QTableView* view, column - номер колонки, width - ширина.
        // передача управления элементу tableView
        ui->tableView->setFocus();
        QMessageBox::information(NULL,QObject::tr("Информация"),tr("Не все так плохо..."));
 
}
Далее создана форма класса
C++ (Qt)
1
2
3
Addnomenklatura::Addnomenklatura(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::Addnomenklatura)
На ней есть кнопка pushButton как связать нажатие этой кнопки с выполнением слота на другой форме? А именно слота prostoSlot()
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.12.2014, 04:57
Ответы с готовыми решениями:

Как связать сигнал одного класса со слотом другого класса, содержащего указатель на объект этого класса?
Подскажите, пожалуйста, как связать сигнал одного класса со слотом другого класса, содержащего...

Ошибка при обращении из одного класса к методу другого класса
Структура проекта, 2 класса: класс графики MainWindow класс логики Сannibals при обращении из...

Вызов слота из другого класса
При вызове слота из MainWindow.cpp в MainWindow.cpp все работает. Перенес слот в mouses.cpp. ...

Соединения слота одного класса и сигнала другого
Здравствуйте! Недавно начал изучать Qt и столкнулся с проблемой соединения слотов и сигналов. У...

2
205 / 165 / 41
Регистрация: 25.10.2013
Сообщений: 527
12.12.2014, 09:54 2
Цитата Сообщение от lexflax Посмотреть сообщение
На ней есть кнопка pushButton как связать нажатие этой кнопки с выполнением слота на другой форме? А именно слота prostoSlot()
В документации всё хорошо описано, в чём проблема?
Вам нужно связать сигнал нажатия кнопки и вызов слота.
connect(указатель_на_pushButton, SLOT(clicked()), указатель_на_MainWindow1, SLOT(prostoSlot()));
А вот как в одном месте получить указатель_на_pushButton и указатель_на_MainWindow1 - вам виднее.
1
11 / 11 / 6
Регистрация: 03.04.2011
Сообщений: 631
12.12.2014, 11:05  [ТС] 3
Спасибо с этим уже разобрался, возникла другая проблема но о ней в другой теме опишу.
0
12.12.2014, 11:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.12.2014, 11:05
Помогаю со студенческими работами здесь

Обработка сигналов одного класса при обращении из другого
Не могу понять почему не обрабатывается сигнал "finished" у QNetworkAccessManager. Сигналы со...

Как получить доступ к переменным одного класса из методов другого
Есть класс MainWindow с переменными в pablic, и кьютешный QGraphicsView. Нужно вот тут void...

Вызов слота класса потомка при вызове сигнала класса родителя
Всем привет. Ситуация следующая. Есть класс родитель "class1". В нём объявлен и вызывается...

Вызов функции из QItemDelegate класса QAbstractListModel
Привет, у меня получается очень интересная ситуация. Есть QListView, так же унаследовал два класса...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru