Autor Beitrag
Rupert
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 47
Erhaltene Danke: 1

Netware, Linux, WIN A-Z, DOS
Delphi 2005- Delphi 2009
BeitragVerfasst: Fr 20.02.09 10:39 
Servus miteinander!

Ein Standardereignis, das ich bei der Eingabe in einem EditFeld vielfach anwende, muss ich nun in einer Routine auslösen.
Das OnKeyUp Ereignis ruft die:
ausblenden Delphi-Quelltext
1:
procedure TForm1.Artikel_Aufkleber_Filtern(Sender: TObject; var Key: Word; Shift: TShiftState);					


Und da dachte ich mir, da übergebe ich halt die erforderlichen Parameter.
ausblenden Delphi-Quelltext
1:
    Artikel_Aufkleber_Filtern(Sender,VK_SPACE,ssLeft);					

[Fehler] Hauptprogramm_icom.pas(1182): Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen.
Diesen Fehler bring er bei VK_SPACE
VK_SPACE ist doch ein Übergabaparameter bei einem Tastaturdruck!

Übergebe ich die falschen Parameter? Funktioniert das Übergeben anders?


Moderiert von user profile iconNarses: Topic aus Sonstiges (Delphi) verschoben am Fr 20.02.2009 um 11:01

_________________
Grüße Rupert
Logikmensch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 390

Win XP
Delphi 2007 Prof., XE2, XE5
BeitragVerfasst: Fr 20.02.09 10:53 
Du versuchst, die Ereignisprozedur, die normalerweise von Windows bei einem losgelassenen Key auftritt, von außen selbst aufzurufen.
Willst Du ein SPACE simulieren, oder willst Du nur Deine eigene Eventroutine aufrufen?

Im Fall von letzterem: Setze VK_SPACE in eine Variable und übergebe sie anstatt sie als Parameter zu setzen.

Im Falle von Ersterem: Nimm PostMessage und sende die Nachricht direkt an Windows. Wie das geht, kannst Du hier im Forum nachlesen.

_________________
Es gibt keine Probleme - nur Lösungen!
Rupert Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 47
Erhaltene Danke: 1

Netware, Linux, WIN A-Z, DOS
Delphi 2005- Delphi 2009
BeitragVerfasst: Fr 20.02.09 11:00 
user profile iconLogikmensch hat folgendes geschrieben Zum zitierten Posting springen:
Du versuchst, die Ereignisprozedur, die normalerweise von Windows bei einem losgelassenen Key auftritt, von außen selbst aufzurufen.
Willst Du ein SPACE simulieren, oder willst Du nur Deine eigene Eventroutine aufrufen?

Im Fall von letzterem: Setze VK_SPACE in eine Variable und übergebe sie anstatt sie als Parameter zu setzen.


Danke!
Ich simuliere ein Space und setze beide Parameter in eine Variable (auch ssShift) und so funktioniert es schließlich.

_________________
Grüße Rupert