crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Как правильно создавать сигналы и слоты в QCreator?
tumanovalex
  опции профиля:
сообщение 27.7.2010, 19:58
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 22
Регистрация: 6.8.2008
Пользователь №: 253

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




Репутация:   0  


Использую qt-sdk-win-opensource-2010.04. В редакторе сигналов и слотов создаю отправитель-сигнал-получатель-слот. Как я понимаю, после этого в файле mainwindow.h должны появляться строки типа
:private slots:
   void btCancel_clicked();
а в файле mainwindow.h строки типа:
:void MainWindow::btCancel_clicked() {
   close();
}
Однако у меня после создания новых строк в редакторе сигналов и слотов новые строки в файлах не появляются. Xто нужно сделать, чтобы создать из строк в Редакторе сигналов и слотов создать функции, которые бы работали? Получается, что в Редакторе сигналов и слотов реально работающие функции не создаются? Тогда зачем его использователь? Посмотрите, пожалуйста, мой проект.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
molchanoviv
  опции профиля:
сообщение 27.7.2010, 20:33
Сообщение #2


Старейший участник
****

Группа: Сомодератор
Сообщений: 597
Регистрация: 18.7.2008
Из: Саратов
Пользователь №: 238

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




Репутация:   5  


Цитата(tumanovalex @ 27.7.2010, 20:58) *
Как я понимаю, после этого в файле mainwindow.h должны появляться строки типа


Не правильно понимаешь. Во-первых все что делаешь в ui-шке будет находиться в ui_form.h где form - название формы. Во вторых ты лучше сперва руками коннекти сигналы со слотами с помощью connect чтобы разобраться.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
tumanovalex
  опции профиля:
сообщение 27.7.2010, 22:19
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 22
Регистрация: 6.8.2008
Пользователь №: 253

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




Репутация:   0  


Мне больше понравился такой путь:
1. Щелкаю правой кнопкой по Кнопке отмена, выбираю Перейти к слоту..
2. Выбираю действие для элемента управления.
3. В файле mainwindow. h появляется код
private slots:
    void on_btCancel_clicked();
в файле mainwindow.cpp:
void MainWindow::on_btCancel_clicked()
{
    close(); //добавляю
}
В файле ui_mainwindow.h никаких данных из Редактора сигналов и слотов не нашел, зато нашел их в mainwindow.ui. Что касается написания ручками, то мне больше нравится, когда формальную работу делает программа, а неформальную работу делаю я сам
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 28.7.2010, 5:47
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(tumanovalex @ 28.7.2010, 2:19) *
мне больше нравится, когда формальную работу делает программа, а неформальную работу делаю я сам
а что понимать под формальной работой?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
molchanoviv
  опции профиля:
сообщение 28.7.2010, 7:20
Сообщение #5


Старейший участник
****

Группа: Сомодератор
Сообщений: 597
Регистрация: 18.7.2008
Из: Саратов
Пользователь №: 238

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




Репутация:   5  


Цитата(tumanovalex @ 27.7.2010, 23:19) *
В файле ui_mainwindow.h никаких данных из Редактора сигналов и слотов не нашел, зато нашел их в mainwindow.ui.

ui_mainwindow.h генерируется uic-ом автоматически из mainwindow.ui
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 2.12.2020, 15:26