crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Сигналы и слоты в Qt Designer, не получается связать
lunelasuis
  опции профиля:
сообщение 25.1.2012, 21:22
Сообщение #1


Новичок


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

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




Репутация:   0  


только начал разбираться в Qt. Самый простой проект, создаю по шаблону. пустая форма описываемая классом MainWindow. Создаю меню файл-открыть.

В описании класса добавляю слот :
class MainWindow : public QMainWindow
{
    Q_OBJECT
    
public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

public slots:
    void open();
    
private:
    Ui::MainWindow *ui;
};


Написал реализацию. затем возвращаюсь в дизайнер чтобы связать сигнал и слот и не вижу моего добавленного слота:

Прикрепленное изображение


В чем проблема? вроде бы все просто и не могу понять в чем загвоздка.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
crashsp
  опции профиля:
сообщение 26.1.2012, 5:30
Сообщение #2


Студент
*

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

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




Репутация:   546  


Цитата(lunelasuis @ 25.1.2012, 21:22) *
только начал разбираться в Qt. Самый простой проект, создаю по шаблону. пустая форма описываемая классом MainWindow. Создаю меню файл-открыть.

В описании класса добавляю слот :
class MainWindow : public QMainWindow
{
    Q_OBJECT
    
public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

public slots:
    void open();
    
private:
    Ui::MainWindow *ui;
};


Написал реализацию. затем возвращаюсь в дизайнер чтобы связать сигнал и слот и не вижу моего добавленного слота:

Прикрепленное изображение


В чем проблема? вроде бы все просто и не могу понять в чем загвоздка.


Почему не появилось не подскажу , но советую писать руками connect , так будет проще просматривать свои соединения , а не прыгать туда сюда.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
lunelasuis
  опции профиля:
сообщение 26.1.2012, 9:10
Сообщение #3


Новичок


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

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




Репутация:   0  


Ну, в принципе, да. Уже вчера решил действовать руками, а не доверять дизайнеру
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Abesh
  опции профиля:
сообщение 30.1.2012, 17:54
Сообщение #4


Студент
*

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

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




Репутация:   0  


Для того, чтобы из дизайнера связаться со слотами, надо перейти в режим сигналов и слотов, ну а дальше уже все понятно
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 31.1.2012, 19:54
Сообщение #5


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

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

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




Репутация:   94  


Цитата(lunelasuis @ 25.1.2012, 23:22) *
не вижу моего добавленного слота:
А дизайнер не имеет ни малейшего представления о твоей программе. Это не дельфи, ..., Дизайнер - автономная программа.
Однако позволяет использовать твой собственный слот.
Если делаешь соединение прямо на форме (а не в панели слотов/сигналов), то открывается редактор для выбора слота, и там есть кнопочка для добавления слота, вводишь его имя ручками, затем выбираешь его в качестве целевого. И всё.

Но вообще это плохая возможность Дизайнера, т.к. если слот создан в коде, то человек будет искать соединение в коде, но никак не в дизайнере.

В Дизайнере пусть работает дизайнер и использует в нём только то, что можно сразу же посмотреть в действии в самом Дизайнере.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 28.4.2024, 20:07