crossplatform.ru

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

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> Сигнал/Слот проблемы
as001622
  опции профиля:
сообщение 22.5.2008, 20:21
Сообщение #11


Новичок


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

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




Репутация:   0  


пытался пользоваться слотом close() тот же результат. Вообще для main чтобы проверить работает ли кнопка будет достаточно
#include <QtGui/QApplication>
#include <QtGui/QVBoxLayout>
#include "MYbutton.h"
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MYButton *button1=new MYButton;
    button1->setDefaulImageFileName(QString("images/default_button.png"));
    button1->setActionImageFileName(QString("images/action_button.png"));
    QObject::connect(button1,SIGNAL(clicked()),&a, SLOT(quit()));
    button1->show();
    return a.exec();
}


но всё равно не работает
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 22.5.2008, 20:37
Сообщение #12


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

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

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




Репутация:   94  


а с обычной кнопкой работает этот же код? мне просто сейчас уже в лом, что либо компилить ;)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
as001622
  опции профиля:
сообщение 22.5.2008, 20:40
Сообщение #13


Новичок


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

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




Репутация:   0  


да обычная кнопка работает
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 22.5.2008, 20:48
Сообщение #14


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

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

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




Репутация:   94  


ну если завтра будет время то попробую с компилить, а может на свежую голову и так увижу.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 23.5.2008, 9:09
Сообщение #15


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

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

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




Репутация:   17  


Со своей проблемой разобрался! Дело вот в чем. Все эти параметры привязываются к виджету при инициализации. ОБЯЗАТЕЛЬНО надо указывать виджет ДАННОГО класса. Т.е. в моем случае таким классом является
class QDialDistParam: public QDialog, public Ui::distParams

Значит, QWidget** tab_widgets должна быть переменной именно этого класса, а не класса TLV.
Ошибочным являлся следующий отрывок кода:
QWidget* wtab = main_window -> tab_widgets[k];
param_vec[index] -> chkParamName = new QCheckBox(wtab);


Сообщение отредактировал AD - 23.5.2008, 9:10
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Mixolap
  опции профиля:
сообщение 23.5.2008, 16:46
Сообщение #16


Студент
*

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

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




Репутация:   0  


Слоты должны быть определены в
private slots: или public slots:
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
as001622
  опции профиля:
сообщение 24.5.2008, 16:29
Сообщение #17


Новичок


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

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




Репутация:   0  


Я тоже нашёл ответ на свой вопрос. В каждой функции, обрабатывающей события необходимо было вставить строку QAbstractButton::functionname(event).
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 28.3.2024, 19:46