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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как одной строкой создать свойство Q_PROPERTY ?  (Прочитано 6163 раз)
qtkoder777
Частый гость
***
Offline Offline

Сообщений: 245


Просмотр профиля
« : Октябрь 22, 2013, 12:46 »

Написал макрос: сразу создается и переменная член класса и методы доступа к ней, и прописывается Q_PROPERTY. Класс с таким макросом компилируется.
Но Q_PROPERTY не работает через макрос.
Q_PROPERTY работает только если в определении класса его прописать дополнительно.
 
Код
C++ (Qt)
#define MY_PROPERTY(Type,var)   \
private: \
Type var;\
public: \
const Type& get_##var()const{return var;}\
void set_##var(Type val){var=val;}\
Q_PROPERTY(Type var READ get_##var WRITE set_##var)

Можно ли написать макрос, который сделает всё в одну строку, или всё таки придётся дополнительно прописывать Q_PROPERTY?
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #1 : Октябрь 22, 2013, 13:50 »

Можно ли написать макрос, который сделает всё в одну строку, или всё таки придётся дополнительно прописывать Q_PROPERTY?
Тут, как мне кажется, или дополнительно прописывать Q_PROPERTY, или править moc, или перед мог пускать свою тулзень которая пропишет Q_PROPERTY.
Записан
Maestro
Гость
« Ответ #2 : Октябрь 30, 2013, 03:07 »

Правой мышкой по Q_PROPERTY --> Рефакторинг --> Создание отсутствуюших членов Q_PROPERTY
Записан
qtkoder777
Частый гость
***
Offline Offline

Сообщений: 245


Просмотр профиля
« Ответ #3 : Ноябрь 07, 2013, 12:13 »

Правой мышкой по Q_PROPERTY --> Рефакторинг --> Создание отсутствуюших членов Q_PROPERTY

Написал Q_PROPERTY в начале класса, щелкнул этот пункт и ничего. Что сделано не так?
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #4 : Ноябрь 07, 2013, 12:36 »

Написал Q_PROPERTY в начале класса, щелкнул этот пункт и ничего. Что сделано не так?
Возьми QtCreator посвежее.
Записан
qtkoder777
Частый гость
***
Offline Offline

Сообщений: 245


Просмотр профиля
« Ответ #5 : Ноябрь 07, 2013, 15:14 »

Скачал неделю назад версия 2.8.1
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #6 : Ноябрь 07, 2013, 17:49 »

Скачал неделю назад версия 2.8.1
Cпециально проверил, в 2.7 автодополнение свойства уже есть.
Записан
Maestro
Гость
« Ответ #7 : Ноябрь 10, 2013, 02:30 »

Прочтите это http://qt-project.org/doc/qtcreator-2.8/creator-editor-refactoring.html
Неплохо-бы получше узнать инструмент которым пользуетесь.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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