AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

System Image List kopieren

Ein Thema von oki · begonnen am 7. Nov 2008 · letzter Beitrag vom 9. Nov 2008
Antwort Antwort
Seite 2 von 2     12   
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#11

Re: System Image List kopieren

  Alt 7. Nov 2008, 22:15
Hi,

Dank euch beiden.
Folgender Code klappt bei mir:
Delphi-Quellcode:
procedure TOTFListView.CreateWnd;
var SML, ML : PLongWord;
begin
  inherited;
  FFileImageList16 := TImageList.Create(self);
  FFileImageList16.Height := 16;
  FFileImageList16.Width := 16;
  self.SmallImages := FFileImageList16;

  FFileImageList32 := TImageList.Create(self);
  FFileImageList32.Height := 32;
  FFileImageList32.Width := 32;
  self.LargeImages := FFileImageList32;

  GetMem(ML, Sizeof(LongWord));
  ML^ := 0;
  GetMem(SML, Sizeof(LongWord));
  SML^ := 0;
  Shell_GetImageLists(ML, SML);
  if SML^ > 0 then
    FFileImageList16.Handle := SML^;
  if ML^ > 0 then
    FFileImageList32.Handle := ML^;
  FreeMem(ML);
  FreeMem(SML);
end;
In den Anhang habe ich auch noch einen Screenshot gelegt.

Jetzt stellt sich nur noch die Frage mit der Sackgasse.

Gruß oki
Miniaturansicht angehängter Grafiken
systemicons_175.jpg  
42
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#12

Re: System Image List kopieren

  Alt 7. Nov 2008, 22:19
Es ist unnötig, hier auf den Speichermanager zurückzugreifen. Deklariere SML und ML als LongWord bzw. HIMAGELIST. Dann kannst du dir die Aufrufe von GetMem und FreeMem sparen. Der Funktion kannst du einfach @SML und @ML übergeben.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#13

Re: System Image List kopieren

  Alt 7. Nov 2008, 23:45
Klar, mit den Zeigern. Eine Deklaration mittels var in der Funktion tut es sicher auch. Ist beim Probieren entstanden. Ich wollte auch erst HIMAGELIST benutzen, hab aber nicht rausbekommen wo das deklariert ist.

Gruß oki
42
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#14

Re: System Image List kopieren

  Alt 9. Nov 2008, 19:05
Hi Luckie.

Ich stell mich wohl grad etwas blöd an, aber ich kann das Demo nicht finden. Ich hab im Forum gesucht und auf deiner HomePage. Kannst du bitte mal so nett sein und mir den direkten Link posten?

Auch wenn mein Code aktuell funzt möchte ich ihn trotzdem noch mal prüfen. Ich bin mir nicht sicher, ob ich wirklich alles richtig mache in der Verwendung.

Schon mal Dank und Gruß

oki
42
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz