powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / C++ [игнор отключен] [закрыт для гостей] / TComponentState как проверять в С++???
2 сообщений из 2, страница 1 из 1
TComponentState как проверять в С++???
    #32127843
Фотография Vector
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello!
Столкнулся с проблемой! Переписываю компоненту с Pascal на C++
и заодно кое-что переделываю.
Короче Новый класс из TCustomPanel
в переопределении события Resize :
Pascal версия: if (csDesigning in ComponentState) then Exit;
Когда пытался написать сравнение для С++
типа этого: if(this->ComponentState==dsDesigning)
вываливается ругань:
[C++ Error] ResPanel.cpp(29): E2094 'operator!=' not implemented in type 'TComponentState' for arguments of type 'Classes__74'

Свойство ComponetState - свойство класса TComponent , определено вот так:
enum Classes__34 { csLoading, csReading, csWriting, csDestroying, csDesigning, csAncestor, csUpdating, csFixups, csFreeNotification, csInline, csDesignInstance };

typedef Set<Classes__34, csLoading, csDesignInstance> TComponentState;

__property TComponentState ComponentState = {read=FComponentState, nodefault};

Но почему нельзя сравнивать?
Кто писал компоненты и переопределял методы, но не хотел
чтобы они выполнялись во время Designing подскажите!!!!

С уважением Роман.
xroot@mail.ru
...
Рейтинг: 0 / 0
TComponentState как проверять в С++???
    #32127847
YuriAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
enum задает перечисление костант.
Так что тебе надо сравнить с константой!
Код: plaintext
1.
if( сsDesigning==dsDesigning ) 
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / TComponentState как проверять в С++???
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]