Checkbox nicht klickbar machen?



  • wie kann ich eine Checkbox nicht klickbar machen? Wenn ich Enabled auf False setze ist es grau und das will ich nicht.



  • Einfach im OnClick Ereignis sofort wieder deaktivieren/aktivieren je nachdem.



  • Oder die CheckBox auf ein randloses Panel setzen und dieses per Enable deaktivieren. Das wirkt dann auf alle auf dem Panel befindlichen Komponenten.

    Aber immer dran denken, dass es schlechtes GUI-Design ist, dem User ein Control anzubieten, das "klickbar" aussieht, es aber nicht ist.



  • Danke, ich werde es ausprobieren?

    Jansen schrieb:

    Aber immer dran denken, dass es schlechtes GUI-Design ist, dem User ein Control anzubieten, das "klickbar" aussieht, es aber nicht ist.

    Ich lade einen Bool wert aus einer Ini Datei und die Checkbox soll nur den Bool wert anzeigen. (Sieht besser aus als True/false bzw. JA/Nein)



  • Ist aber verwirrend, also schlechtes Design.
    Von einer CheckBox erwartet der User, dass er selbst damit etwas de/aktivieren kann.
    Wenn du eine grafische Dartellung bevorzugst dann solltest du einfach Grafiken benutzen.

    Ein Mittelweg wäre eventuell die Verwendung von "ausgegrauten" CheckBoxen ohne Caption, wobei der zugehörige Text per Label oder StaticText angezeigt wird.

    Nachtrag: siehe auch TCheckBox::AllowGrayed.


Anmelden zum Antworten