Color=clHotLight - ошибка
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
Всем привет! Столкнулся с такой проблемой, указываю в свойствах формы Color значение clHotLight, и при компиляции выскакивает ошибка Invalid Property Value, якобы такого значения нет... хотя я его выбрал из списка всех значений, а не рисовал в ручную.... Где собака зарыта?
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Какой-то странный цвет... Не знаю такого...
Какие-то грабли в IDE. Но слава богу грабли - это инструмент, который вполне можно разобрать на запчасти
Чтобы понять откуда берутся выпадающие списки найдите файл dsgnintf.pas и процедуру procedure TColorProperty.GetValues(Proc: TGetStrProc);
И даллее разбирайтесь почему у Вас не срослись текстовые значения с числовыми.
Точнее, окуда взялось лишнее (странное) текстовое значение в списке.
Какие-то грабли в IDE. Но слава богу грабли - это инструмент, который вполне можно разобрать на запчасти

Чтобы понять откуда берутся выпадающие списки найдите файл dsgnintf.pas и процедуру procedure TColorProperty.GetValues(Proc: TGetStrProc);
И даллее разбирайтесь почему у Вас не срослись текстовые значения с числовыми.
Точнее, окуда взялось лишнее (странное) текстовое значение в списке.
-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
м-м-м-да-а-а.... появилась эта фигня когда установил компоненты Raize очень функциональные и практичные....
А этот файл - dsgnintf.pas найти не могу (((
При этом интересно получается, ведь когда я в дизайнере ставлю этот цвет - компонента меняет цвет на какой-то темно синий или что-то в этом духе... получается ссылка на код цвета рабочая, почему только компилятор не жует... есть еще два цвета интересные - clMenuBar, clMenuHighlight.... вот...
Похоже копать глубже надо - модуль Graphic.pas
const
clScrollBar = TColor(COLOR_SCROLLBAR or $80000000);
clBackground = TColor(COLOR_BACKGROUND or $80000000);
clActiveCaption = TColor(COLOR_ACTIVECAPTION or $80000000);
clInactiveCaption = TColor(COLOR_INACTIVECAPTION or $80000000);
clMenu = TColor(COLOR_MENU or $80000000);
clWindow = TColor(COLOR_WINDOW or $80000000);
clWindowFrame = TColor(COLOR_WINDOWFRAME or $80000000);
clMenuText = TColor(COLOR_MENUTEXT or $80000000);
clWindowText = TColor(COLOR_WINDOWTEXT or $80000000);
clCaptionText = TColor(COLOR_CAPTIONTEXT or $80000000);
clActiveBorder = TColor(COLOR_ACTIVEBORDER or $80000000);
clInactiveBorder = TColor(COLOR_INACTIVEBORDER or $80000000);
clAppWorkSpace = TColor(COLOR_APPWORKSPACE or $80000000);
clHighlight = TColor(COLOR_HIGHLIGHT or $80000000);
clHighlightText = TColor(COLOR_HIGHLIGHTTEXT or $80000000);
clBtnFace = TColor(COLOR_BTNFACE or $80000000);
clBtnShadow = TColor(COLOR_BTNSHADOW or $80000000);
clGrayText = TColor(COLOR_GRAYTEXT or $80000000);
clBtnText = TColor(COLOR_BTNTEXT or $80000000);
clInactiveCaptionText = TColor(COLOR_INACTIVECAPTIONTEXT or $80000000);
clBtnHighlight = TColor(COLOR_BTNHIGHLIGHT or $80000000);
cl3DDkShadow = TColor(COLOR_3DDKSHADOW or $80000000);
cl3DLight = TColor(COLOR_3DLIGHT or $80000000);
clInfoText = TColor(COLOR_INFOTEXT or $80000000);
clInfoBk = TColor(COLOR_INFOBK or $80000000);
clGradientActiveCaption = TColor(COLOR_GRADIENTACTIVECAPTION or $80000000);
clGradientInactiveCaption = TColor(COLOR_GRADIENTINACTIVECAPTION or $80000000);
clBlack = TColor($000000);
clMaroon = TColor($000080);
clGreen = TColor($008000);
clOlive = TColor($008080);
clNavy = TColor($800000);
clPurple = TColor($800080);
clTeal = TColor($808000);
clGray = TColor($808080);
clSilver = TColor($C0C0C0);
clRed = TColor($0000FF);
clLime = TColor($00FF00);
clYellow = TColor($00FFFF);
clBlue = TColor($FF0000);
clFuchsia = TColor($FF00FF);
clAqua = TColor($FFFF00);
clLtGray = TColor($C0C0C0);
clDkGray = TColor($808080);
clWhite = TColor($FFFFFF);
StandardColorsCount = 16;
clMoneyGreen = TColor($C0DCC0);
clSkyBlue = TColor($F0CAA6);
clCream = TColor($F0FBFF);
clMedGray = TColor($A4A0A0);
ExtendedColorsCount = 4;
clNone = TColor($1FFFFFFF);
clDefault = TColor($20000000);
Вот тут нету этих цветов......
А этот файл - dsgnintf.pas найти не могу (((
При этом интересно получается, ведь когда я в дизайнере ставлю этот цвет - компонента меняет цвет на какой-то темно синий или что-то в этом духе... получается ссылка на код цвета рабочая, почему только компилятор не жует... есть еще два цвета интересные - clMenuBar, clMenuHighlight.... вот...
Похоже копать глубже надо - модуль Graphic.pas
const
clScrollBar = TColor(COLOR_SCROLLBAR or $80000000);
clBackground = TColor(COLOR_BACKGROUND or $80000000);
clActiveCaption = TColor(COLOR_ACTIVECAPTION or $80000000);
clInactiveCaption = TColor(COLOR_INACTIVECAPTION or $80000000);
clMenu = TColor(COLOR_MENU or $80000000);
clWindow = TColor(COLOR_WINDOW or $80000000);
clWindowFrame = TColor(COLOR_WINDOWFRAME or $80000000);
clMenuText = TColor(COLOR_MENUTEXT or $80000000);
clWindowText = TColor(COLOR_WINDOWTEXT or $80000000);
clCaptionText = TColor(COLOR_CAPTIONTEXT or $80000000);
clActiveBorder = TColor(COLOR_ACTIVEBORDER or $80000000);
clInactiveBorder = TColor(COLOR_INACTIVEBORDER or $80000000);
clAppWorkSpace = TColor(COLOR_APPWORKSPACE or $80000000);
clHighlight = TColor(COLOR_HIGHLIGHT or $80000000);
clHighlightText = TColor(COLOR_HIGHLIGHTTEXT or $80000000);
clBtnFace = TColor(COLOR_BTNFACE or $80000000);
clBtnShadow = TColor(COLOR_BTNSHADOW or $80000000);
clGrayText = TColor(COLOR_GRAYTEXT or $80000000);
clBtnText = TColor(COLOR_BTNTEXT or $80000000);
clInactiveCaptionText = TColor(COLOR_INACTIVECAPTIONTEXT or $80000000);
clBtnHighlight = TColor(COLOR_BTNHIGHLIGHT or $80000000);
cl3DDkShadow = TColor(COLOR_3DDKSHADOW or $80000000);
cl3DLight = TColor(COLOR_3DLIGHT or $80000000);
clInfoText = TColor(COLOR_INFOTEXT or $80000000);
clInfoBk = TColor(COLOR_INFOBK or $80000000);
clGradientActiveCaption = TColor(COLOR_GRADIENTACTIVECAPTION or $80000000);
clGradientInactiveCaption = TColor(COLOR_GRADIENTINACTIVECAPTION or $80000000);
clBlack = TColor($000000);
clMaroon = TColor($000080);
clGreen = TColor($008000);
clOlive = TColor($008080);
clNavy = TColor($800000);
clPurple = TColor($800080);
clTeal = TColor($808000);
clGray = TColor($808080);
clSilver = TColor($C0C0C0);
clRed = TColor($0000FF);
clLime = TColor($00FF00);
clYellow = TColor($00FFFF);
clBlue = TColor($FF0000);
clFuchsia = TColor($FF00FF);
clAqua = TColor($FFFF00);
clLtGray = TColor($C0C0C0);
clDkGray = TColor($808080);
clWhite = TColor($FFFFFF);
StandardColorsCount = 16;
clMoneyGreen = TColor($C0DCC0);
clSkyBlue = TColor($F0CAA6);
clCream = TColor($F0FBFF);
clMedGray = TColor($A4A0A0);
ExtendedColorsCount = 4;
clNone = TColor($1FFFFFFF);
clDefault = TColor($20000000);
Вот тут нету этих цветов......
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
При чем, здесь COLOR_INFOBK - прописан в модуле Windows.pas
clInfoBk = TColor(COLOR_INFOBK or $80000000);
clInfoBk = TColor(COLOR_INFOBK or $80000000);
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
В модуле RzCommon.pas нашел следующее:
{$IFDEF VCL50}
const
{$EXTERNALSYM COLOR_MENUHILIGHT}
COLOR_MENUHILIGHT = 29;
{$EXTERNALSYM COLOR_MENUBAR}
COLOR_MENUBAR = 30;
clHotLight = TColor( COLOR_HOTLIGHT or $80000000 );
clGradientActiveCaption = TColor( COLOR_GRADIENTACTIVECAPTION or $80000000 );
clGradientInactiveCaption = TColor( COLOR_GRADIENTINACTIVECAPTION or $80000000 );
clMenuHighlight = TColor( COLOR_MENUHILIGHT or $80000000 );
clMenuBar = TColor( COLOR_MENUBAR or $80000000 );
{$ENDIF}
Как понять эту строчку? - {$IFDEF VCL50} Т.е. нужна библиотека vcl50.bpl?
{$IFDEF VCL50}
const
{$EXTERNALSYM COLOR_MENUHILIGHT}
COLOR_MENUHILIGHT = 29;
{$EXTERNALSYM COLOR_MENUBAR}
COLOR_MENUBAR = 30;
clHotLight = TColor( COLOR_HOTLIGHT or $80000000 );
clGradientActiveCaption = TColor( COLOR_GRADIENTACTIVECAPTION or $80000000 );
clGradientInactiveCaption = TColor( COLOR_GRADIENTINACTIVECAPTION or $80000000 );
clMenuHighlight = TColor( COLOR_MENUHILIGHT or $80000000 );
clMenuBar = TColor( COLOR_MENUBAR or $80000000 );
{$ENDIF}
Как понять эту строчку? - {$IFDEF VCL50} Т.е. нужна библиотека vcl50.bpl?
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
При чем, модуль RzCommon.pas не компилится ))))) выскакивает ошибка на строке: Canvas.Brush.Color := clMenuBar - якобы clMenuBar неизвестный параметр....
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
Ну вот! ))) Нашел выход ))) Убрал {$IFDEF VCL50} и {$ENDIF} прям в самом модуле и все заработало ))))
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
А какая версия Delhpi?" писал(а):А этот файл - dsgnintf.pas найти не могу (((
Обычно он находится в Source/Toolsapi
Обычно он не компилируется никогда и используется в обычных проектвах, а только при разработке своих компонентов с нестандартными свойствами.
Это условня компиляция. Кусок кода который участвует в процессе компиляции только если используется VCL от Delphi 5" писал(а):{$IFDEF VCL50}...{$ENDIF}
-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
Ясненько.. delphi6 у меня стоит....
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

А чё RGB(0, 0, 0); не катит уже?
[syntax=Delphi] [/syntax]