Zitat von
xZise:
Zitat von
Amateurprofi:
Zur Checkbox statt 2 Menu Items.
Geht nicht.
Das Menu ist dafür gedacht, z.B. alle Linien eines Typs aus- oder einzublenden.
Es ist aber möglich für jede Linie separat festzulegen, ob sie gezeigt werden soll oder nicht.
Wenn nun z.B. gerade 2 der Mittelsenkrechten gezeigt werden und eine nicht - was soll dann die Checkbox zeigen ?
Das müsste kein Problem sein. Heißt das Menüitem beispielsweise "miHalbierende", dann musst du bei OnClick überprüfen, ob das gesetzt ist:
Delphi-Quellcode:
procedure ...
begin
if miHalbierende.Checked then
ShowHalbierende
esle
HideHalbierende;
end;
Als ich schrieb "das geht nicht", ging es mir nicht um die Frage wie ich ein MenuItem auf checked oder unchecked setze, oder darum auf ein gechecktes bzw. ungechecktes zu reagieren, sondern um folgendes.
Mit den Menueinträgen kann man alle Linien eines Typs, also zum Beispiel alle Winkelhalbierenden ein- / ausblenden.
Es gibt aber andere Wege, gezielt eine bestimmte Winkelhalbierende auszublenden, die beiden anderen aber unverändert zu lassen.
Somit sind 6 verschiedene Zustände möglich.
Mit einem Check im MenuItem sind aber nur 2 dieser Zustände darstellbar.
Nehmen wir an Wa=sichtbar, Wb=sichtbar, Wc=nicht sichtbar.
Wie soll dann der Status des Menuitems sein ?
Checked wäre falsch, denn es sind nicht alle sichbar.
Unchecked wäre ebefalls falsch, denn es sind nicht alle unsichtbar.
Folglich : Geht nicht