Einzelnen Beitrag anzeigen

xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#11

Re: Icons mit Delphi erstellen

  Alt 13. Mai 2006, 18:46
Hallo,
Zitat von Martin K:
1. Frage:
Wie bekomme ich aus TLogPalette ein array[0..255] of TColor ?
In einer TLogPalette ist ja ein Array of TPaletteEntry drin. Mit einer Schleife kannst Du Dir da ein Array basteln:
Delphi-Quellcode:
var
  Farben: array[0..255] of TColor;
  Palette: TLogPalette;
begin
  for C := 0 to 255 do
    Farben[C] := RGB(Palette.palPalEntry[C].peRed, Palette.palPalEntry[C].peGreen, Palette.palPalEntry[C].peBlue);
Zitat von Martin K:
2. Frage:
In dieser Zeile wird also die Palette geladen:
Delphi-Quellcode:
    lpPal^.palNumEntries :=
      GetSystemPaletteEntries(dc,
      0,
      256,
      lpPal^.palPalEntry);
Es wird allerdings die Systempalette geladen.
Wie kann ich hier die Palette aus einem Stream (Datei) laden?
GetPaletteEntries... und dann?
Du musst mit MSDN-Library durchsuchenCreatePalette eine Palette erstellen, eine TLogPalette mit den Werten füllen, die Du aus dem Stream geladen hast (das Format kennst Du hoffentlich), dann mit MSDN-Library durchsuchenSetPaletteEntries die Palette füllen und schließlich mit MSDN-Library durchsuchenSelectPalette die Palette in einen DC laden.

Gruß
xaromz
  Mit Zitat antworten Zitat