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

Вниз

TListBox.OnDrawItem   Найти похожие ветки 

 
Miwa ©   (2002-05-03 18:42) [0]

Точно помню, что был когда-то такой вопрос, но никак не могу найти. Да и поиск не работает. Временно. А суть - как реализовать сабж? Тоесть, код

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
var i:integer;
begin
listbox1.Canvas.Font.Color:=clRed;
for i:=0 to listbox1.Count do listbox1.Canvas.TextOut(1*10+10,5,listbox1.Items[i]);
end;

делает то, что ничего не делает. Обидно. А хотелось бы увидеть красные буковки на листбоксе ;о)


 
Song ©   (2002-05-03 19:32) [1]

Чтоб работало нужно 1 в отрывке "1*10+10..." заменить на I
Но данный код писал программист Паскаля а не Дельфи.. Зачем-то высчитывать смещение... А если строк будет больше чем убирается в клиентскую область ListBox? Вообщем, бред здесь написан.

Юзай, тока не забудь свойство Style поставить в OwnerDrawFixed:

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
var i:integer;
begin
With TListBox(Control).Canvas Do
Begin
Font.Color:=clRed;
TextOut(Rect.Left+2,Rect.Top+2,Items[Index]);
End;
end;



 
Song ©   (2002-05-03 19:33) [2]

Var i уже не нужен


 
Miwa ©   (2002-05-03 20:01) [3]


> данный код писал программист Паскаля а не Дельфи

Холмс, Вы гений! Кроме шуток. Я вправду взращен на паскале. ;о)

> свойство Style поставить в OwnerDrawFixed

Черт. Во, где собака зарыта! Большое спасибо!


 
Song ©   (2002-05-03 20:04) [4]

Подожжи, подожжи, тут ошибочка маленькая... чтобы сработало нужно With... изменить на With TListBox(Control), TListBox(Control).Canvas Do


 
MBo ©   (2002-05-04 06:13) [5]

Молчу...



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
1-49917
rdm
2002-05-02 17:42
2002.05.16
PasswordChar в TEdit


3-49899
Alexandr
2002-04-18 12:04
2002.05.16
Технологический пароль для ParaDox


1-50001
handra
2002-04-30 14:50
2002.05.16
TIToolServices


1-50039
Dimedrol
2002-04-30 13:43
2002.05.16
Ошибка при выходе...


1-50022
MisterBin
2002-05-01 12:38
2002.05.16
Помогите с Integer и String