Hallo Community,
Ich komme irgendwie auf keinen grünen Zweig bei meinem Problem, das sich wie folgt äußert:
Ich habe per .rc-Datei einen Dialog erzeugt, in dem Eingabefelder sind. Nun wollte ich eine Art Passwort-Eingabefeld mit verschlüsselter Ausgabe - z.B. Sternchen - erzeugen.
Dazu habe ich mir dann den Weg der Fenster-Unterklassen gewählt, und dem entsprechenden Feld diese U.-Klasse zugewiesen:
Die Unterklasse ist im Moment mehr ein Dummy, und sieht wie folgt aus:
Setze ich jetzt allerdings den Fokus auf das Feld, bekomme ich keine "Hallo"-MB, und genauso bekomme ich bei Zeicheneingabe leider auch keine "Tschö"-MB.
oldproc ist übrigens eine globale Variable, und auch ein Aufruf von CallWindowProc() im default-Zweig der switch-Schleife hat keine Änderung gebracht.
Ich hoffe jemand von euch ist blickiger als ich, und kann mir bei diesem wahrscheinlich total simplen Problem helfen.
Greetz,
RadAzonG
Ich komme irgendwie auf keinen grünen Zweig bei meinem Problem, das sich wie folgt äußert:
Ich habe per .rc-Datei einen Dialog erzeugt, in dem Eingabefelder sind. Nun wollte ich eine Art Passwort-Eingabefeld mit verschlüsselter Ausgabe - z.B. Sternchen - erzeugen.
Dazu habe ich mir dann den Weg der Fenster-Unterklassen gewählt, und dem entsprechenden Feld diese U.-Klasse zugewiesen:
C++:
case WM_INITDIALOG:
hEdit=GetDlgItem(hDlg,IDD_PW);
oldproc=(WNDPROC)SetWindowLong(hEdit,GWL_WNDPROC,(LONG)EditProc);
return TRUE;
Die Unterklasse ist im Moment mehr ein Dummy, und sieht wie folgt aus:
C++:
LRESULT CALLBACK EditProc(HWND hDlg,UINT msg,WPARAM wParam,LPARAM lParam)
{
switch(msg)
{
case WM_SETFOCUS: MessageBox(0,L"Hallo",L"Test",MB_OK);
break;
case WM_CHAR:
case WM_KEYDOWN: MessageBox(hDlg,L"Tschö",L"Test",MB_OK);
break;
}
return CallWindowProc(oldproc,hDlg,msg,wParam,lParam);
}
Setze ich jetzt allerdings den Fokus auf das Feld, bekomme ich keine "Hallo"-MB, und genauso bekomme ich bei Zeicheneingabe leider auch keine "Tschö"-MB.
oldproc ist übrigens eine globale Variable, und auch ein Aufruf von CallWindowProc() im default-Zweig der switch-Schleife hat keine Änderung gebracht.
Ich hoffe jemand von euch ist blickiger als ich, und kann mir bei diesem wahrscheinlich total simplen Problem helfen.
Greetz,
RadAzonG
Zuletzt bearbeitet von einem Moderator: