crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Widgets like Q_OBJECT
OLAND2
  опции профиля:
сообщение 13.4.2010, 18:03
Сообщение #1


Студент
*

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

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




Репутация:   0  


делаю класс на QWidgets с макросом Q_OBJECT а после этого он когда создается я не вижу на виджете стайл шит.
по типу он invisible.

без Q_OBJECT работает
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
OLAND2
  опции профиля:
сообщение 13.4.2010, 18:36
Сообщение #2


Студент
*

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

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




Репутация:   0  


.h
class tempWidget:public QWidget
{
Q_OBJECT
public:
tempWidget(QWidget *parent):QWidget(parent)
{

};

~tempWidget(){};
};

.cpp

this->temp=new tempWidget(0);
this->temp->setStyleSheet("image: url(:/picture);");
this->temp->setGeometry(QRect(0, 0, 30, 40));
this->temp->show();
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ufna
  опции профиля:
сообщение 13.4.2010, 20:19
Сообщение #3


Активный участник
***

Группа: Участник
Сообщений: 362
Регистрация: 24.5.2008
Из: Курган/СПб
Пользователь №: 182

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




Репутация:   5  


пере-MOC-ать не забыл?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
SABROG
  опции профиля:
сообщение 13.4.2010, 22:39
Сообщение #4


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

Группа: Участник
Сообщений: 1207
Регистрация: 8.12.2008
Из: Russia, Moscow
Пользователь №: 446

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




Репутация:   34  


Если виджет на базе QWidget'a, то нужно еще такое добавить, чтобы работали стайл шиты:

void CustomWidget::paintEvent(QPaintEvent *)
{
     QStyleOption opt;
     opt.init(this);
     QPainter p(this);
     style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
}
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 30.11.2024, 12:17