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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Значения в слоте  (Прочитано 2207 раз)
ilya2013
Гость
« : Август 01, 2013, 06:49 »

Такой вопрос, можно ли в слот передать значение?
вот так:
Код:
void MainWindow::mySlot(int a)
{
    switch(a)
{        
case 0: view->setVisible(true);
ui->wgt->setAutoFillBackground(false);
view->load(QUrl ("C:/MinGW/bin/progamma_na_konferenciu/pages/Sod.html"));
break;

case 1: t->show(); break;
 
case 2: t2->show(); break;
}
}


а потом вот так:

Код:
  mn->addAction("Содержание",
                  this, SLOT(mySlot(0)));
    mn->addAction("Видеоролики",
                  this, SLOT(mySlot(2)));
« Последнее редактирование: Август 01, 2013, 07:18 от ilya2013 » Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #1 : Август 01, 2013, 08:36 »

В слот значение может передать только сигнал.
Только вот QAction будет испускать свой конкретный сигнал triggered( bool checked = false ).
Для решения твоей задачи задействуй QAction::setData():
Код
C++ (Qt)
mn->addAction("Содержание", this, SLOT(mySlot()))->setData( 0 );
mn->addAction("Видеоролики", this, SLOT(mySlot()))->setData( 2 );
...
void MainWindow::mySlot()
{
     QAction* a = qobject_cast< QAction* >( sender() );
     int arg = a->data().toInt();
     ...
}
 
« Последнее редактирование: Август 01, 2013, 08:40 от GreatSnake » Записан

Qt 5.11/4.8.7 (X11/Win)
ilya2013
Гость
« Ответ #2 : Август 01, 2013, 09:18 »

Поясниете код пожалуйста  Непонимающий
Записан
ilya2013
Гость
« Ответ #3 : Август 01, 2013, 09:27 »

Поясните код поалуйста Непонимающий
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #4 : Август 01, 2013, 09:31 »

Мета-объектная система
Сигналы и слоты
Записан

Qt 5.11/4.8.7 (X11/Win)
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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