Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2008, 15:55   #1
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
Вопрос TCombobox, событие OnDrawItem

Доброго всем времени суток. В на событие OnDrawItem компонента TCombobox следующее событие:
Код:
procedure TForm9.ScienceDirectionDrawItem(Control: TWinControl;
  Index: Integer; Rect: TRect; State: TOwnerDrawState);
var
  s:string;
  Flag: Cardinal;
begin
  if (index mod 2 =0) and (State=odselected) and (state<>OdFocused) then
    TComboBox(Control).Canvas.Brush.Color:=clInfoBk;
  TComboBox(Control).Canvas.FillRect(Rect);
  s := TComboBox(Control).Items[index];
  Flag:=DT_LEFT;
  Flag := Flag or DT_WORDBREAK;
  Inc(Rect.Left,3);
  Dec(Rect.Right,3);
  DrawText(TComboBox(Control).Canvas.Handle,PChar(s),length(s),Rect,Flag);
end;
У меня Delphi7 и она ругается на if (index mod 2 =0) and (State=odselected) and (state<>OdFocused) then мол Incompatible types =\ Вроде в хелпе написано, что она может принимать это значение. Какой я момент пропустил?
Помог? Ну так нажми на весы!
SNUPY вне форума Ответить с цитированием
Старый 19.12.2008, 16:24   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

1. Вам не кажется, что (State=odselected) and (state<>OdFocused) - взаимоисключающие состояния? В том виде, как вы их используете.
2. А используете вы их неверно. Состояние - это множество, и работать с ним нужно так:
if not (ОdFocused in State) ...
mihali4 вне форума Ответить с цитированием
Старый 19.12.2008, 18:18   #3
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
По умолчанию

Большое спасибо
Помог? Ну так нажми на весы!
SNUPY вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TComboBox! samlay Общие вопросы Delphi 8 03.07.2008 22:11
PopUpMenu не срабатывает OnDrawItem Comer_Jus Общие вопросы Delphi 6 16.05.2008 21:48
TCombobox kalyan_ne_@ Компоненты Delphi 10 13.05.2008 09:44
..TComboBox.. Ensoph Компоненты Delphi 5 29.06.2007 16:36