Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.04.19;
Скачать: CL | DM;

Вниз

CheckListBox и OwnerDraw-некорректная работа.   Найти похожие ветки 

 
gear   (2008-05-19 20:36) [0]

Такая вот проблема:
Имею список checklistbox c установленными галками. При установке свойства OwnerDrawFixed и прорисовке текста вручную, галки оказвываются снятыми. Только наведение фокуса на строчку заставляет появиться галку. Перерисовка checklistbox опять снимает все галки. Всё это происходит при использовании классического стиля в XP. При использовании стиля Windows XP - всё отрисовывается корректно.
Отрисовываю строчки стандартно:


procedure TForm4.CheckListBox1DrawItem(Control: TWinControl; Index: Integer;
 Rect: TRect; State: TOwnerDrawState);
var
 S:PChar;
begin

with (Control as TCheckListBox), Canvas do
begin

 Canvas.FillRect(Rect);

 MoveTo(Rect.Left, Rect.Top);
 SetTextAlign(Canvas.Handle, TA_LEFT OR TA_UPDATECP);

 S:=PChar("test");

 Canvas.Font:=CheckListBox1.Font;
 Canvas.TextOut(0,0,S);

end;
end;


Использую Turbo Delphi Professional.
Что это может быть? Баг в Delphi? Ведь при стиле Windows XP отрисовывается всё правильно. Можно ли это исправить?


 
Leonid Troyanovsky ©   (2008-05-19 21:31) [1]


> gear   (19.05.08 20:36)  

> свойства OwnerDrawFixed и

http://groups.google.com/group/borland.public.delphi.vcl.components.using/msg/9dccd8f57b37ef6d

--
Regards, LVT.



Страницы: 1 вся ветка

Текущий архив: 2009.04.19;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.025 c
1-1211146906
Shadow
2008-05-19 01:41
2009.04.19
зайди там все объяснено!


15-1235057008
@!!ex
2009-02-19 18:23
2009.04.19
Как ограничить скорость доступа к инету?


2-1235393881
aha
2009-02-23 15:58
2009.04.19
как изобразить петлю гистерезиса , то есть такая задача


6-1202307450
Urvin
2008-02-06 17:17
2009.04.19
Исправить простейшую программу на Indy,


4-1208534442
Незнайка
2008-04-18 20:00
2009.04.19
работа с The Bat!