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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Не умею пользоваться Assistant помогите !!!  (Прочитано 6311 раз)
Wander
Гость
« : Февраль 12, 2009, 11:15 »

Товарищи !!!
Прошу не смеяться с моего вопроса, а кому не трудно помочь.

Поставил я QT Creator - там все в одном, мне нравиться, весь проект создается сам.

Когда я перехожу в режим редактирования сигналов/слотов и связываю объекты, все работает.
А вот как писать вручную - аж слезы берут.

Например я поставил на форму вып.список comboBox и метку label_1 нажимаю правой кнопкой на комбобоксе и выбираю Go to Slot...  а там - currentIndexChanget(int)

Открывается редактор в нем есть:

void MainWindow::on_comboBox_currentIndexChanged(int)
{
}
я хочу, например, чтоб как индекс списка изменился, взять его и сложить с неким числом - и после вывести на label_1

я вписываю :
QObject::connect(comboBox,SIGNAL(IndexChanged(int),label_1, SLOT(setText(и тут сложение нада написать, я так понимаю))));

Ну в общем немогу я - напишите как нада писать в этой строчке, а по примеру я буду разбираться и может пойму как использовать Assistant
Спасибо за внимание
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Февраль 12, 2009, 11:20 »

не надо этого соединения. Дизайнер тебе уже сделал заготовку функции-слота в ней и пиши вычисление. (в данном случае работает автосоединение )

П.С. к чему в название темы Асистент упоминается?
Записан

Юра.
Wander
Гость
« Ответ #2 : Февраль 12, 2009, 11:28 »

"Дизайнер тебе уже сделал заготовку функции-слота в ней и пиши вычисление. "

То есть это уже заготовка :
void MainWindow::on_comboBox_currentIndexChanged(int)
{
}

ну как туда написать, что б взять число с комбобокса сложить его с чем то и вывести на Лейбл Непонимающий

Извините за навязчивость Рот на замке
Записан
BRE
Гость
« Ответ #3 : Февраль 12, 2009, 11:32 »

"Дизайнер тебе уже сделал заготовку функции-слота в ней и пиши вычисление. "

То есть это уже заготовка :
void MainWindow::on_comboBox_currentIndexChanged(int)
{
}

ну как туда написать, что б взять число с комбобокса сложить его с чем то и вывести на Лейбл Непонимающий

Извините за навязчивость Рот на замке
Код
C++ (Qt)
void MainWindow::on_comboBox_currentIndexChanged( int value )
{
   int result = value + chtoto;
   label->setText( QString::number( result ) );
}
 
Записан
Wander
Гость
« Ответ #4 : Февраль 12, 2009, 11:34 »

Спасибо, теперь я понял.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #5 : Февраль 12, 2009, 11:40 »

2 Wander, мой совет такой, непользуйся Дизайнером на данном этапе освоения Qt, пиши все руками, быстрее разберешся.
Записан

Юра.
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #6 : Февраль 12, 2009, 13:55 »

BRE, в слот on_comboBox_currentIndexChanged передается индекс и не значение по индексу. Твой пример может запутать Wander'a.

Код
C++ (Qt)
void MainWindow::on_comboBox_currentIndexChanged( int index )
{
   QString itemStr = comboBox->itemText(index);
   bool ok;
   int value = itemStr.toInt(&ok);
   if (!ok) return;
 
   int result = value + chtoto;
   label->setText( QString::number( result ) );
}
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
BRE
Гость
« Ответ #7 : Февраль 12, 2009, 14:14 »

BRE, в слот on_comboBox_currentIndexChanged передается индекс и не значение по индексу.
Упс, полностью осознаю свою промашку.  Смеющийся

Кстати, у QLabel есть методы setNum(), можно сделать:
Код
C++ (Qt)
label->setNum( result );
 
Записан
Wander
Гость
« Ответ #8 : Февраль 17, 2009, 13:08 »

Спасибо большое за помощь.
Теперь я, в принципе, сам смеюсь со своего вопроса.
Вопрос был связан с моей необознанностью. Дело в том, что я писал раньше на СИ ++ только консольные програмки и не имел понятия о декларации классов и о классах в целом. Теперь немного разобравшись с этим вопросом - все встало на сои места.
И примеры из Ассистанта теперь не запутываю меня.
Спасибо еще раз. Может в будущем я буду просить помощи в более сложных вопросах. 
Записан
ритт
Гость
« Ответ #9 : Февраль 17, 2009, 14:39 »

писал на плюсах и не имел понятия о классах? как-то это жутковато звучит Улыбающийся
Записан
BaltikS
Гость
« Ответ #10 : Февраль 17, 2009, 14:52 »

писал на плюсах и не имел понятия о классах? как-то это жутковато звучит Улыбающийся
+1
Можно было не писать на плюсах тогда Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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