![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
вот код отрисоки
Код:
PngIcon:=TPngImage.Create;
if odSelected in State then begin
CheckListBox4.Canvas.Brush.Color:=RGB(255,119,227);
CheckListBox4.Canvas.Font.Color:=ClBlue;
end
ELSE begin
CheckListBox4.Canvas.Brush.Color:=CheckListBox4.Color;
CheckListBox4.Canvas.Font.Color:=clPurple;
end;
CheckListBox4.ItemHeight:=20;
CheckListBox4.Canvas.Font.Size:=12;
CheckListBox4.Canvas.TextOut(Rect.Left,Rect.Top,DynamicLangSaveLang[index]);
if (Length(ParamIconSaveLang[index])>0)and(ParamIconSaveLang[index]<>'...') then begin
PngIcon.LoadFromFile(ExtractFileDir(Application.ExeName)+ParamIconSaveLang[index]);
CheckListBox4.Canvas.Draw(Rect.Left+150,Rect.Top+3,PngIcon);
end;
PngIcon.Free;В масиве DynamicLangSaveLang хранятся тексты в PngIcon будет находится иконка в формате png Вот скрин 1) Почему остается рамка выделения и как это исправить 2) Как эти числа получить програмно Rect.Left+150,Rect.Top+3 CheckListBox4.ItemHeight:=20; чтобы после изменения размеров шрифта менялась и отрисовка а также иконки были сразу после текста а не в пол метре от него |