Autor Beitrag
MisterBum
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 107



BeitragVerfasst: Do 10.02.05 14:19 
Hallo,
hat einer von euch schöne XP-Bilder wie Datei öffnen, Speichern unter etc. für in die Menüleiste einzufügen. Wenn ich welche extrahiere oder runterlade sehen die immer "beschissen" aus, wenn ich die über die ImageList hinzufüge.

Gruß und Dank
MisterBum
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Do 10.02.05 15:37 
Bemühe doch mal google.

ich kann dir aber sagen dass du nicht viel finden wirst, oder besser gesagt nicht viel kostenloses.
Ich habe vor ein paar Tagen selbst danach gesucht und nur shareware gefunden :roll:

Wenn du dich aber mit Icons zufrieden gibst holste dir am besten das Programm Suche in: Delphi-Forum, Delphi-Library ICONS und liest mal die Shell32.dll aus. Meines wissens sind dadrin die Icons von WinXP gespeichert.

Da Icons so ziemlich der ungünstigste Name für so ein Programm ist, kannste natürlich auch ein anderes Programm suchen. Davon gibts alleine hier in der Freewaresparte ca. 23872832973 Stück ;)
F34r0fTh3D4rk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Do 10.02.05 15:41 
ist ja auch net das größte problem sowas zu schreiben, selbst den code kriegt man ja schon geliefert:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
uses ShellApi;

function IconFromFile(const Filename: String; IconNr: Word): HICON;
var
  buffer: array[0..2*MAX_PATH]of Char;
begin
  StrPCopy(buffer, Filename);
  Result := ExtractAssociatedIcon(HInstance, buffer, IconNr);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  TempIcon: HICON;
  Icon:TIcon;
begin
  if OpenDialog1.Execute then begin
    //Icon holen
    TempIcon := IconFromFile(OpenDialog1.FileName,0);
    //Prüfen ob gefunden
    if (TempIcon <> 0then
    begin
      //In Datei speichern
      Icon:=TIcon.Create;
      Try
        Icon.Handle := TempIcon;
        Icon.SaveToFile('c:\Merke.ico');
      Finally
        Icon.Free;
      End;
    end;
  End;
End;
MisterBum Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 107



BeitragVerfasst: Do 10.02.05 16:30 
Wenn ich z.B die Icons aus der shell32.dll nehme und diese über eine ImageList in die Menüleiste meines Programmes einfüge, dann sehen die so "sche****" aus. Warum sind die bei mir nicht so schön? Woran kann das liegen? Jemand ne Idee?
Wäre dankbar wenn mir jemand aus seinem Programmen ein paar Bilder wie Speichern unter etc. im XP-Style für mich hat...
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 10.02.05 16:34 
du solltest die icons auch in der richtigen auflösung anzeigen, sprich 32*32 pixel. mit drawiconex kannst du die übrigens direkt auf den canvas beliebiger objekte beamen (vorausgesetzt sie haben nen canvas)
MisterBum Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 107



BeitragVerfasst: Do 10.02.05 16:41 
Die sind in 32x32. Die sehen in der Vorschau so schön aus, und sobald die Bilder in die ImageList kommen, sehen sie nicht mehr schön aus.
@retnyg: Hast du keine XP-Bilder?
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 10.02.05 16:47 
schon, aber die befinden sich alle noch in der shell32.dll bzw der explorer.exe ;)

ich vermute mal dein problem liegt bei der transparenten farbe, wenn es nicht die grösse ist.

ich habe das so gelöst: zielcanvas grösse wird mit 32*32pixel grossem weissem bild gefüllt. anschliessend mit drawiconex das icon per code raufgebeamt.
MisterBum Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 107



BeitragVerfasst: Do 10.02.05 16:51 
Haste mal was Beispielquellcode? Versteh das mit dem Beamen nicht?
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 10.02.05 16:55 
ausblenden Delphi-Quelltext
1:
2:
  iconhandle := GetClassLong(fensterhandle, GCL_HICON);   
  DrawIconEx(Glyph.Canvas.Handle,5,5,iconHandle,16,16,0,0,DI_NORMAL);
MisterBum Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 107



BeitragVerfasst: Do 10.02.05 16:58 
Sorry,
aber das versteh ich leider nicht.
Ich möchte doch nur ein Bild auf das MainMenu "zaubern" das es schön aussieht.
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 10.02.05 17:00 
schaue mal ob es bei deiner imagelist eine eigenschaft transparentcolor oder color oder so gibt. die transparente farbe ist normal weiss, also setze die farben mal der reihe nach auf weiss und teste dann ob es den gewünschten erfolg bringt. falls du ned weiterkommst poste mal nen screenie damit man sich vorstellen kann woran es liegen kann.
MisterBum Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 107



BeitragVerfasst: Do 10.02.05 17:09 
Wie bekomme ich den hier nen Screenshot rein? Hab das noch nie gemacht...
DANKE!!!
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 10.02.05 17:11 
1.) ALT+DRUCK betätigen
2.) photoshop öffnen
3.) neues bild und STRG+V
4.) Für Web speichern und als typ gif auswählen
5.) das bild auf deinen webspace uppen
6.) hier einen link darauf platzieren oder den IMG tag beutzen
MisterBum Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 107



BeitragVerfasst: Do 10.02.05 17:28 
Hier der Link:

www.freehost.ag/misterbum/index.htm

Die Bilder 1,2,3,5 und 8 sind extrahiert und eingefügt. Man sieht es ja...
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 10.02.05 17:32 
hmm die kompression die du gewählt hast ist so stark dass man kaum was erkennen kann... ausserdem funzt der link so nicht, man muss das index.htm weglassen sonst kommt nur werbung.
sieht aber aus als ob deine icons nur 16*16 pixel gross wären.
MisterBum Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 107



BeitragVerfasst: Do 10.02.05 17:37 
Die sind laut Einstellungen 32x32. Auch wenn ich irgendein Bild in 32x32 sehen die so aus. Noch ne Idee was ich machen könnte?
Hast du keine Bilder oder sonst einer?
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 10.02.05 17:44 
ich kann da nix bestimmtes erkennen, mach mal die kompressionsrate des screenshots kleiner auf gute qualität oder so.
sieht aber trotzdem verdammt nach kleinen icons aus ^^