Форум: "Основная";
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];
ВнизИконки в программе Найти похожие ветки
← →
olookin (2002-02-21 18:44) [1]Вот пример кода, вытаскивающего иконки из экзешника и размещающего их в Images. Чтобы заменить иконку в своем приложении, нужно:
1. создать массив имен файлов с нужными иконками
2. в нужное время вызывать ExtractIcon
3. и поменять хэндл текущей иконки на вызываемую
var Form1: TForm1;
im: array [0..100] of TImage;
w,n: integer;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var r: array [0..1000] of char;
begin
if opendialog1.execute then begin
strpcopy(r,opendialog1.filename);
im[n]:=TImage.Create(Form1); im[n].Parent:=ScrollBox1;
im[n].width:=32; im[n].height:=32;
im[n].left:=10+32*w+w*10; im[n].top:=10;
im[n].Picture.icon.handle:=ExtractIcon(Hinstance,r,0);
w:=w+1; n:=n+1; end;
end;
procedure TForm1.DirectoryListBox1Change(Sender: TObject);
var r: array [0..1000] of char;
i: integer;
begin
DirectoryListBox1.Drive := DriveComboBox1.Drive;
FileListBox1.Drive := DriveComboBox1.Drive;
FileListBox1.Directory := DirectoryListBox1.Directory;
for i:=0 to FileListBox1.Items.Count-1 do begin
FileListBox1.ItemIndex:=i;
strpcopy(r,FileListBox1.Filename);
im[n]:=TImage.Create(Form1); im[n].Parent:=ScrollBox1;
im[n].width:=32; im[n].height:=32;
im[n].left:=10+32*w+w*10; im[n].top:=10;
im[n].Picture.icon.handle:=ExtractIcon(Hinstance,r,0);
w:=w+1; n:=n+1; end;
end;
end.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.005 c