Einzelnen Beitrag anzeigen

MatthiasR

Registriert seit: 21. Apr 2005
193 Beiträge
 
#1

KeyPress von Listbox überschreiben

  Alt 23. Jul 2009, 12:48
Irgendwie stehe ich gerade auf dem Schlauch: ich möchte in einer eigenen von TCustomListBox abgeleiteten Komponente gerne einbauen, dass man bei aktiviertem Multiselect einzelne Listbox-Einträge mittels Leertaste markieren kann (bzw. Markierungen wieder aufheben).

Soweit, so gut. Ich habe nun einfach mal die Prozedur "KeyPress" überschrieben und meine Zusatzfunktionalität eingebaut. Hat aber nichts gebracht, da die Funktion nicht aufgerufen wird, wenn ich in einer aktiven Listbox auf der Tastatur rumklimper.

Als zweiten Ansatz habe ich dann die Zusatzfunktionalität in eine eigene Prozedur vom Typ TKeyPressEvent gelegt, den Konstruktor überschrieben und innerhalb dessen dann dem Ereignis OnKeyPress diese neue Prozedur zugewiesen. Das funktionierte dann auch, jedoch auch nur so lange, wie niemand auf die Idee kommt, im Objektinspektor dem OnKeyPress-Event einer solchen Listbox einen neuen Eventhandler zuzuweisen. Logisch, es kann ja immer nur ein Eventhandler angegeben werden.

--> Wie gesagt, irgendwie stehe ich grade echt mächtig auf dem Schlauch, wie ich das denn "richtig" anstellen muss, damit das klappt . Wer kann helfen?
  Mit Zitat antworten Zitat