Ikona, BMP , SpeedBtn, Ikona XP

0

Czy ktoś wie jak wstawić do SpeedBtn Ikone?
Czy ktoś wie jak przekonwertować ikone do bmp ale nie 16x16 tlko 32x32 i 48x48?
Czy ktoś wie jak wstawić do image'a ikone ale w postaci 48x48 a nie 32x32?
(Te konwertowanie to nie chodzi mi w delphi tylko jakiś program by się przydał :)

Będe baaardzo wdzięczny.--Delphi 6
Pozdrowienia,
Imperior

0
  1. Ikona w SpeedButton - looknij na ponizszy kod, wyciaga ikone z exe lub ikone przypisana danemu typowi pliku, lub ikona z pliku *.ico, zamienia na bmp i mozna ladowac do SpeedButtona

procedure TForm1.GetIkona(Filename: String);
var
Icon: TIcon;
FileInfo: SHFILEINFO;
Bmp: TBitmap;
begin
if FileExists(Filename) then
begin
Icon := TIcon.Create;
SHGetFileInfo(PChar(Filename), 0, FileInfo, SizeOf(FileInfo), SHGFI_ICON);
Icon.Handle := FileInfo.hIcon;
Bmp:=TBitmap.Create;
Bmp.Canvas.Pen.Color:=clWhite;
Bmp.Canvas.Brush.Color:=clWhite;
Bmp.Canvas.Rectangle(0,0,32,32);
Bmp.Width:=Icon.Width;
Bmp.Height:=Icon.Height;
Bmp.Canvas.Draw(0,0,Icon);
* ponizszy kawalek doluz gdy chcesz miec rozmiar 16x16, czyli male ikony
Bmp.Canvas.CopyRect(Rect(0,0,16,16),BitIkona.Canvas,Rect(0,0,32,32));
Bmp.Width:=16;
Bmp.Height:=16;
* koniec zmniejszania
Icon.Free;
Bmp.Free;
SpeedButton1.Glyph:=Bmp;
end;
end;

  1. Konwersja ico na bmp - Najprosciej zamienic ikone na bmp przy uzyciu nawet painta, zrob printscreena ekranu na ktorym gdzies jest twoja ikona, potem wklej to do painta i wytnij ikone, zapisz jako bmp. Kazda standartowa ikona ma 32x32, a duze ikony to 48x48. Do wyciagania duzych ikon to np. ResHacker, a do ikon jako-tako [biblioteki ikon itp] to taki prog o nazwie MicroAngelo.

  2. Jesli masz jakos ikone 48x48 w exe lub bibliotece ikon, to wyciagnij ja uzywajac ktoregos z programow z punktu 2. Przekonwertuj ja na bmp sposobem z punktu 2. Na koniec wstaw bmp do Imaga

Troche lopatologiczne, i miejscochlonne za co z gory sorki, ale mam nadzieje ze opis jest w miare wyczerpujacy :)-------[ Delphi 6 Rulez 4 Ever!, przynajmniej do czasu gdy naucze sie C++ :) ]------

1 użytkowników online, w tym zalogowanych: 0, gości: 1