| |
|
|
| GetControlParas ermittelt, ob und wo ein Mausklick auf ein Item per linker Maustaste, rechter Maustaste oder linkem Doppel-Mausklick stattgefunden hat.
P:B1 ist ein Zeiger auf einen 320 Byte grossen Speicherbereich. Dieser muss zuvor LINK:[declare]iert, und LINK:[DIM]ensioniert sein.
Wenn ein Klick stattgefunden hat dann wird der Speicher P:B1 mit Werten gefüllt, mit denen sehr leicht eigene Controls (z.B. Edits oder Comboboxen usw.) an passender Stelle im Listview erzeugt werden können. Eine manuelle und variablere Methode, um neue Itemtexte einzugeben, ähnlich LINK:[EnableEdits]().
Ist das Rückgabewert 1, 2 oder 3 dann wird P:B1 mit folgenden Werten gefüllt (Alles LongInts ausser der String):
0 | Handle des Listview Controls, in dem der Klick stattfand | 4 | Index der Spalte (nullbasierend), in der der Klick stattfand | 8 | Index der Zeile (nullbasierend), in der der Klick stattfand | 12 | X Position (Pixel) - innerhalb der Listview Abmessungen - des angeklickten Items | 16 | Y Position (Pixel) - innerhalb der Listview Abmessungen - des angeklickten Items | 20 | Breite des angeklickten Items (Pixel) | 24 | Höhe des angeklickten Items (Pixel) | 28 | Font Handle des Listviews | 32 | Textausrichtung innerhalb der angeklickten Spalte (0=links / 1=rechts / 2=zentriert) | 36-63 | noch unbenutzt | 64 | String (kein Zeiger!) mit dem Itemtext (maximal 256 Bytes, abschliessend mit Nullbyte) |
Damit können sie jetzt an passender Stelle im Listview-Control Edits oder sonstige Controls erstellen, z.B. Edits, die nur Zahlen aufnehmen. Oder bestimmte Spalten sperren, die nicht editiert werden können usw. Oder ganz einfach nur ermitteln, wo genau der Mausklick stattfand. Ein Quelltext liegt dem Listview-Paket bei. Um die Parameter eines bestimmten Items zu erhalten (um z.B. den EnableEdits()-TAB-Effekt nachzubilden) können sie LINK:[GetOwnControlParas]() benutzen. Listview.Dll benötigt.
|
|
|
| |
|
|