Вызов метода при изменении свойства.
(1/1)
Sergey1985:
Добрый день. Пытаюсь написать что то похожее на VCL но только для консоли. Предположим есть класс
(многое убрал пока из него чтоб не мешалось)
class TLabel
{
public:
char Caption[255];
unsigned char TextColor;
void SetTextColor(unsigned char color);
};
void TComponent::SetTextColor(unsigned char color)
{
TextColor = color;
textcolor(TextColor);
cprintf(Caption,"%s");
};
после инициализации
TLabel *l;
int main()
{
l = new TLabel();
}
нужно чтобы при изменении свойства
l->TextColor = RED;
вызывался автоматически метод
SetTextColor(unsigned char color); с TextColor в качестве аргумента т.е.
SetTextColor(TextColor);
Возможно ли такое реализовать?
Смотрел в сторону перегрузки операторов но мне кажется что это не то.
OVE:
Мне кажется как-то так:
Код:
class TMyClass
{
private:
int FMyColor;
protected:
void __fastcall SetMyColor(int NewColor){FMyColor=NewColor;
// и что-то свое дописать можно};
public:
__property int MyColor={read=FMyColor, write=SetMyColor};
};
Sergey1985:
Елки палки точно. Спасибо за ответ. ;D
Навигация