crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> сигналs QTabWidget
denis
  опции профиля:
сообщение 14.8.2009, 14:56
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 8
Регистрация: 10.8.2009
Пользователь №: 993

Спасибо сказали: 0 раз(а)




Репутация:   0  


Просьба, помочь найти (или реализовать?) сигнал о смене вкладок в QTabWidget.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
denis
  опции профиля:
сообщение 17.8.2009, 8:05
Сообщение #2


Новичок


Группа: Новичок
Сообщений: 8
Регистрация: 10.8.2009
Пользователь №: 993

Спасибо сказали: 0 раз(а)




Репутация:   0  


в хелпе я про него вычитал, но воспользоваться не получается. если не трудно, пожалуйста проконсультируйте. использую так:

TabDialog::TabDialog(QWidget *parent) : QDialog(parent){
...
AnagramPage *anagramPage = new AnagramPage;
DictPage *dictPage = new DictPage;
tabWidget = new QTabWidget;
tabWidget->addTab(anagramPage, tr("Anagram"));
tabWidget->addTab(dictPage, tr("Dictionary"));
...
connect(tabWidget, SIGNAL(currentChanged()), this, SLOT(changeStatusBar(tr("Ready11."))));
...
}

void TabDialog::changeStatusBar(QString &message){
statusBar->showMessage(message);
}

но при переключении вкладок слот не вызывается.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 17.8.2009, 8:17
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Цитата(denis @ 17.8.2009, 9:05) *
в хелпе я про него вычитал, но воспользоваться не получается. если не трудно, пожалуйста проконсультируйте.

Сигнал currentChanged имеет параметр int.
Слот changeStatusBar - передавать строку в connect нельзя, там указываются только типы параметров.

    connect(tabWidget, SIGNAL(currentChanged( int )), this, SLOT(changeMessage(int)));

void MyWidget::changeMessage( int page )
{
    QString str;
    switch( page )
    {
    case 0:    str = tr( "Page 0" );        break;
    case 1:    str = tr( "Page 1" );        break;
    ...
    }
    changeStatusBar( str );
}


Сообщение отредактировал BRE - 17.8.2009, 8:18
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.12.2024, 9:59