Russian Qt Forum
Ноябрь 23, 2024, 06:50 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: maintoolBar + combobox  (Прочитано 3104 раз)
shtrix
Гость
« : Июль 03, 2016, 20:50 »


Код:
    QComboBox* ComboBoxCanSettings = new QComboBox(ui->mainToolBar);
   
    ComboBoxCanSettings->addItem("Банка 0.5");
    ComboBoxCanSettings->addItem("Банка 0.33");
    ComboBoxCanSettings->addItem("Банка 0.25");

    ui->mainToolBar->addWidget(ComboBoxCanSettings);
А как теперь отловить выбор в  ComboBox?
Записан
PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #1 : Июль 03, 2016, 20:56 »

Как минимум соединить сигнал, например: void currentIndexChanged(int index) со своим слотом.

PS. А вообще лучше почитать например это: http://doc.qt.io/qt-5/signalsandslots.html
« Последнее редактирование: Июль 03, 2016, 21:26 от PimenS » Записан
shtrix
Гость
« Ответ #2 : Июль 03, 2016, 21:43 »

Как минимум соединить сигнал, например: void currentIndexChanged(int index) со своим слотом.
Я в этом деле не силен(
Создал слот
Код:
public slots:
void can_settings(QString par);
Пытаюсь соединить
Код:
connect(this, SIGNAL(ComboBoxCanSettings->currentIndexChanged(int)),
           this,SLOT(can_settings(int)));

-----------------------------------------
QObject::connect: No such signal MainWindow::ComboBoxCanSettings>currentIndexChanged(QString)
QObject::connect:  (sender name:   'MainWindow')
QObject::connect:  (receiver name: 'MainWindow')
Пишет нет сигнала?
Код:
connect(ComboBoxCanSettings,SIGNAL(ComboBoxCanSettings>currentIndexChanged(QString)),this,SLOT(can_settings(QString)));

-----------------------------------------
QObject::connect: No such signal QComboBox::ComboBoxCanSettings>currentIndexChanged(QString)
QObject::connect:  (receiver name: 'MainWindow')
пишет нет сигнала?
Записан
PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #3 : Июль 03, 2016, 22:08 »

Я дал ссылку на документацию. Все же там написано. Почитайте хоть немного.

Код:
connect(this, SIGNAL(ComboBoxCanSettings->currentIndexChanged(int)), this,SLOT(can_settings(int)));

Какой объект у вас испускает сигнал? А какой должен?
Записан
shtrix
Гость
« Ответ #4 : Июль 03, 2016, 22:19 »

Я дал ссылку на документацию. Все же там написано. Почитайте хоть немного.

Код:
connect(this, SIGNAL(ComboBoxCanSettings->currentIndexChanged(int)), this,SLOT(can_settings(int)));

Какой объект у вас испускает сигнал? А какой должен?

Спасибо понял.
Код:
connect(ComboBoxCanSettings, SIGNAL(currentIndexChanged(int)), this,SLOT(can_settings(int)));
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.078 секунд. Запросов: 22.