Ich will unter gewissen Umständen in diesen Untermenus einen Teil verschwinden/nicht anzeigen lassen.
Du bist der Programmierer, du weißt unter welchen Umständen die Menü-Items verschwinden sollen, das weiß das Programm nicht, d. h. du mußt dem Programm das schon sagen wann die verschwinden sollen.
Wie das mit dem Verschwinden geht hast du schon oben mitbekommen.
Wie man das angehen kann hat Perlsau in einem Beispiel gezeigt.
Vielleicht ein anderer Ansatz, wenn dir If Then nicht gefällt, statt True und False verwende ich gerne Bedingungen
Delphi-Quellcode:
procedure TForm1.Datei1Click(Sender: TObject);
begin
Speichern1.Enabled := Memo1.Modified;
end;
Vielleicht eine Idee, ich packe die Abfragen gelegentlich das in die Haupt-Items (k. A. wie die heißen), so daß beim Klick drauf die Bedingungen durchlaufen werden.
Ich hab es zwar noch nie gemacht, aber wenn es etwas dirty sein darf, jedes MenüItem hat ein Tag Eintrag. Man könnte es missbrauchen und Items zusammenfassen für eine Anfrage, aber dafür ist es nicht gedacht.
Delphi-Quellcode:
procedure TForm1.Datei1Click(Sender: TObject);
var
i: Integer;
begin
for i := 0 to Datei1.Count - 1 do
Datei1.Items[i].Enabled := Datei1.Items[i].Tag = 1;
end;
Aber wie gesagt, das habe ich nicht gepostet, nur habe ich das Gefühl, dass ...