Eine Editbox deaktivieren



  • Nach erfolgloser Suche in der Bordsuche muss ich wohl doch fragen:

    Wie kann man eine EditBox (Eingabefeld) (kann auch eine Checkbox sein)deaktieveren, sodass diese grau ist und man nichts mehr hineinschreiben kann? Dieser Status soll während der Laufzeit geändert werden, egal ob ich ein ResourceScript benutze, oder nicht.

    Hat vielleicht WM_ACTIVATE etwas damit zu tuen??



  • EnableWindow



  • IsDlgButtonChecked(dlg, IDC_CHECKBOX) ? SendDlgItemMessage(dlg, IDC_EDIT, WM_ENABLE, FALSE, 0):SendDlgItemMessage(dlg, IDC_EDIT, WM_ENABLE, TRUE, 0);
    

    nachdem ich diesen Code benutzt hab, habe ich aber noch immer nicht mein Ziel erreicht: Ich kann noch Einträge ins Eingabefeld machen!!

    Wie kann ich das ChildWindow schreibgeschützt machen??



  • 😕

    Hat "dumme Frage" doch schon gesagt:

    EnableWindow ( hChild, false );
    

    Die Forensuche ergibt garantiert etwas...



  • Ja, aber WM_ENABLE bewirk das gleiche!!!

    EnableWindow ist nur MFC und WM_ENABLE ist WINAPI



  • Timme schrieb:

    Ja, aber WM_ENABLE bewirk das gleiche!!!

    EnableWindow ist nur MFC und WM_ENABLE ist WINAPI

    Zweimal falsch.

    WM_ENABLE ist eine Notifikation, die das Fenster darüber informiert, dass sich der Enabled-Zustand geändert hat. Die Nachricht selbst ändert den Zustand nicht.

    BOOL EnableWindow(HWND hWnd, BOOL bEnable); ist eine WINAPI-Funktion.



  • Sorry, hab das mit CWindow::EnableWindow verwechselt.

    Aber EnableWindow funktioniert jetzt bei mir...


Anmelden zum Antworten