Гость
Форумы / C++ [игнор отключен] [закрыт для гостей] / TComponentState как проверять в С++??? / 2 сообщений из 2, страница 1 из 1
27.03.2003, 08:39
    #32127843
Vector
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TComponentState как проверять в С++???
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
27.03.2003, 08:51
    #32127847
YuriAM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TComponentState как проверять в С++???
enum задает перечисление костант.
Так что тебе надо сравнить с константой!
Код: plaintext
1.
if( сsDesigning==dsDesigning ) 
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / TComponentState как проверять в С++??? / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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