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

Вниз

Иконки в ListBox   Найти похожие ветки 

 
Nver   (2006-05-25 12:43) [0]

Можно ли сделать иконки около строк в ListBox? Если нет, то чем тогда можно воспользоваться?


 
unknown ©   (2006-05-25 13:19) [1]

Можно. Это достаточно просто, вот к примеру :
const
 Step:byte=2; // Для красивости понадобится отступ
 BmpSize:byte=16; // возьмем bmp размером 16x16

var
 Form1: TForm1;
 Bmp1,Bmp2:Graphics.TBitMap;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 Bmp1:=Graphics.TBitMap.Create;
 Bmp2:=Graphics.TBitMap.Create;
 Bmp1.LoadFromFile("c:\bmp1.bmp");
 Bmp2.LoadFromFile("c:\bmp2.bmp");
 with ListBox1 do
 begin
   Style:=lbOwnerDrawFixed;
   Items.Text:="aaa"#13#10"bывапи ывап ывыавп ывап bb"#13#10"cывап ыавпыв ы cc"#13#10"ddd"#13#10"eee";
 end;
end;

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
 Rect: TRect; State: TOwnerDrawState);
begin
 with ListBox1.Canvas do
 begin
   FillRect(Rect);
   if (Index mod 2)=0 then
     Draw(Rect.Left+Step,Rect.Top+Step,Bmp1)
   else
     Draw(Rect.Left+Step,Rect.Top+Step,Bmp2);
   Rect.Left:=Rect.Left+Step+BmpSize;
   DrawText(Handle,PAnsiChar(ListBox1.Items[Index]),-1,Rect,DT_WORD_ELLIPSIS);
 end;
end;


 
unknown ©   (2006-05-25 13:21) [2]

Хотя, в принципе, без отступа красивее получается :)


 
Nver   (2006-05-25 13:21) [3]

Спасибо =)


 
Amoeba ©   (2006-05-25 13:22) [4]

Лучше битмапы заранее поместить в ImageList, а не грузить каждый раз из файлов, и брать уже из оттуда.



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

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

Наверх




Память: 0.47 MB
Время: 0.028 c
2-1148464871
webpauk
2006-05-24 14:01
2006.06.11
Установить курсор


15-1147848588
boriskb
2006-05-17 10:49
2006.06.11
Кин-дза-дза в полнометровой мультипликации


4-1142411739
hawkins
2006-03-15 11:35
2006.06.11
Как воспользоваться CreateRemoteThread в 9x ?


15-1147234447
antonn
2006-05-10 08:14
2006.06.11
помогите перевести пару предложений...


2-1148620878
kaginava
2006-05-26 09:21
2006.06.11
Запуск программы из сервиса