Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Listview, FlatSB_SetScrollProp, CreatePalette (https://www.delphipraxis.net/10290-listview-flatsb_setscrollprop-createpalette.html)

OLLI_T 15. Okt 2003 13:09


Listview, FlatSB_SetScrollProp, CreatePalette
 
Hallo Leuts!

Ich arbeite immer noch an meinem bunten Listview. Hintergrund und Header hab ich inzwischen Texturtechnisch im Griff. Jetzt bleibt noch die leidige Scrollbar.

Mit FlatSB_SetScrollProp kann ich problemlos die Abmessungen und die Hintergrundfarbe der Scrollbar ändern. Aber jetzt geht´s ans Eingemachte. Um alle Farben neu zu setzen, muss ich ne Paletten-Handle rüberwachsen lassen. Hat jemand das schon gemacht und stellt mir freundlicherweise ein Codeschnipsel zur Verfügung? Ich weiss nicht wieviel Farben die Palette enthalten muss. Auch die Reihenfolge geht nicht aus dem PSDK hervor. Und zum Rumprobieren fehlt mir einfach die Zeit. Werde die fertige Compo dann zum Dank auch posten.

Sonnige Grüsse

OLLI

OLLI_T 16. Okt 2003 08:16

Re: Listview, FlatSB_SetScrollProp, CreatePalette
 
Ich geb es auf. Hab ne gültig Tablette ääh Palette erstellt bzw. aus Bitmap entnommen und das Handle brav ans Listview übergeben, keine Reaktion. Das Handle lässt sich auch mit FlatSB_GetScrollProp wieder auslesen. Also scheint das Listview den Befehl schon geschluckt zu haben. Ist das jetzt ein Bug in ComCtl32 oder hab ich einen Bock geschossen?

Delphi-Quellcode:
B:=TBitmap.Create;
B.LoadFromFile('C:\Test.bmp'); 256 Farben Bitmap, mit PSP8 gespeichert
If FlatSB_SetScrollProp(LV.Handle,WSB_PROP_PALETTE,B.Palette,TRUE)=FALSE Then
   Showmessage('Fehler'); // das klappt!
FlatSB_GetScrollProp(LV.Handle,WSB_PROP_PALETTE,@hP); // Gleiches Handle kommt retour
B.Free;
Bin für jeden Denkanstoss dankbar!!!

Schönen Tag

OLLI

Ps.: Alle anderen FlatSB_... Funktionen funktionieren supi!

toms 16. Okt 2003 09:21

Re: Listview, FlatSB_SetScrollProp, CreatePalette
 
Rufe zuvor die InitializeFlatSB Function auf.

Zitat:

Initializes flat scroll bars for a particular window.

This API must be called before any other flat scroll bar APIs are called. The window will receive flat scroll bars by default. The scroll bar style can be changed with the FlatSB_SetScrollProp API.

OLLI_T 16. Okt 2003 10:30

Re: Listview, FlatSB_SetScrollProp, CreatePalette
 
HY Tom!

InitializeFlatSB hab ich aufgerufen. Sonst würde der andere Spass ja auch nicht funzen. Dank Dir für´s mitdenken.

Gruss

OLLI


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:18 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz