Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi ListView & Win32Api-Tutorial Problem (https://www.delphipraxis.net/17922-listview-win32api-tutorial-problem.html)

Generalissimo 11. Mär 2004 15:43


ListView & Win32Api-Tutorial Problem
 
Hallo,

ich versuch gerade Kapitel "4.7.12. Die Sortierrichtung im Spaltenkopf anzeigen" aus
dem Win32Api-Tutorial nachzuvollziehen. Ich will erreichen das eben das
Dreieck, welches die Sortierungsrichtung angibt rechts neben dem Text steht und nicht
links (was der Fall mit der Methode SmallImages -> Colum[i].ImageIndex ist).

In dem Tutorial gibt es folgende Stelle:

Delphi-Quellcode:
hHeader := ListView_GetHeader(hLV);
iHeaderVer := SendMessage(hHeader,CCM_GETVERSION,0,0);
Aus der ersten Zeile die Funktion ListView_GetHeader habe ich in der CommCtrl.pas gefunden.
Leider finde ich nirgends die Konstante CCM_GETVERSION.
Weiss jemand wie die aussieht?

Alter Mann 11. Mär 2004 16:07

Re: ListView & Win32Api-Tutorial Problem
 
Hallo,

const CCM_FIRST $2000 // Common control shared messages
const CCM_GETVERSION (CCM_FIRST + $8)

Generalissimo 11. Mär 2004 16:21

Re: ListView & Win32Api-Tutorial Problem
 
wenn

CCM_GETVERSION = CCM_FIRST + $ 8) bedeutet das du meinst:

CCM_GETVERSION = CCM_FIRST + 8

was mache ich da falsch. Ich bekommen immer 0 zurück?
D.h. Ich bekomme 0 zurück wenn ich:

Delphi-Quellcode:
hHeader:=ListView_GetHeader(lv.Handle);
 iHeaderVer:=SendMessage(hHeader,CCM_GETVERSION,0,0);
 label1.Caption:=InttoStr(iHeaderVer);
Ansonsten die richtige Versionsnummer wenn ich:

Delphi-Quellcode:
//hHeader:=ListView_GetHeader(lv.Handle);
 iHeaderVer:=SendMessage(lv.Handle,CCM_GETVERSION,0,0);
 label1.Caption:=InttoStr(iHeaderVer);

MathiasSimmack 11. Mär 2004 16:39

Re: ListView & Win32Api-Tutorial Problem
 
Zitat:

Zitat von Generalissimo
Aus der ersten Zeile die Funktion ListView_GetHeader habe ich in der CommCtrl.pas gefunden.
Leider finde ich nirgends die Konstante CCM_GETVERSION.

Befindet sich in den Beispielprogrammen, wahrscheinlich in der Unit "CommCtrl_Fragment.pas", die ich genau aus diesem Grund geschrieben habe: Mein Delphi war zu alt (Version 5), und ihr habt nichts davon, wenn ich meine "CommCtrl.pas" patche. ;)

Ansonsten: Beispielprogramm anschauen. Ich darf voller Stolz versichern, dass ich nicht völligen Unsinn geschrieben habe. :mrgreen:

Generalissimo 11. Mär 2004 17:02

Re: ListView & Win32Api-Tutorial Problem
 
Danke dir!

Wo kann man eigentlich grundsätzlich mal einen Überblick
über Konstanten aus der Win32Api bekommen?

MathiasSimmack 11. Mär 2004 18:52

Re: ListView & Win32Api-Tutorial Problem
 
Also da kann ich dir das Platform SDK empfehlen, dass du kostenlos bei Microsoft runterladen kannst (DSL wäre allerdings erforderlich). Das PSDK enthält logischerweise die Grundlagen für die Win32-API-Tutorials (uh, das wird der Luckie nicht so gern hören). Will sagen: dort findest du Funktionen und Nachrichten, sowie auch Headerdateien (*.h) mit den entsprechenden Daten. Auf die Weise habe ich bspw. die genannte "CommCtrl_Fragment.pas" für mein Delphi 5 erstellt. ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:27 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