sandman Geschrieben 30. Oktober 2001 Geschrieben 30. Oktober 2001 Weiss jemand wie man eine art Enter-Event in c++ erzeugen kann? Ich habe in einem Eingabefeld etwas hineingeschrieben und sobald ich die Entertaste drücke möchte ich eine andere Funktion aufrufen. Aber die Funktion soll nur aufgerufen werden, wenn ich genau in diesem Eingabefeld bin, ansonsten nicht. Also weiss jemand wie das geht? Oder geht das gar nicht? :confused: Zitieren
sandman Geschrieben 30. Oktober 2001 Autor Geschrieben 30. Oktober 2001 Ja genau. Dialogbasierend. Zitieren
mst Geschrieben 30. Oktober 2001 Geschrieben 30. Oktober 2001 Vielleicht ginge es ungefähr so: //OnOK() überschreiben, wird auf gerufen bei der Enter-Taste void OnOk() { //Wenn der Eingabefocus auf deinem Textfeld liegt //IDC_DEINTEXTFELD natürlich ersetzen if(GetFocus() == GetDlgItem(IDC_DEINTEXTFELD)) { //Hier kannst du jetzt deine Funktion aufrufen } else { //Sonst die Standardbehandlung CDialog::OnOK(); } } Ich hoffe jetzt nur, dass ich das Problem richtig verstanden habe. <FONT COLOR="#a62a2a" SIZE="1">[ 30. Oktober 2001 09:41: Beitrag 1 mal editiert, zuletzt von mst ]</font> Zitieren
gugelhupf Geschrieben 30. Oktober 2001 Geschrieben 30. Oktober 2001 Du musst eine Klasse generieren, die von CEdit erbt !! Dann hast Du die Funktion OnKeyDown zur Verfügung, die als Parameter den Wert der gedrückten Taste erhält. Also: CMyEdit : public CEdit Machst am Besten mit dem Klassenassistenten Zitieren
mst Geschrieben 30. Oktober 2001 Geschrieben 30. Oktober 2001 @gugelhupf: Deine Methode geht natürlich auch. Aber ich persönlich halte sie für etwas umständlich. Aber klappen wird es damit auch. Zitieren
gugelhupf Geschrieben 30. Oktober 2001 Geschrieben 30. Oktober 2001 Umständlich ? Das dauert keine 3 Minuten !? Zitieren
sandman Geschrieben 30. Oktober 2001 Autor Geschrieben 30. Oktober 2001 Ooh, man... langsam vermiss ich VB! Wie kann ich denn eine Klasse defineieren, die von CEdit erbt? Ich bin sozusagen c++newbie und habe mit MFC auch erst neulich angefangen. Kann mir vielleicht jemand die genaue Vorgehensweise beschreiben? Zitieren
mst Geschrieben 31. Oktober 2001 Geschrieben 31. Oktober 2001 Wie gugelhupf schon gesagt hat: Benutz den Klassenassistenten von Visual C++! Der spart doch einiges an Tipparbeit. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.