AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Popup Menu - Untereinträge hinzufügen und löschen
Thema durchsuchen
Ansicht
Themen-Optionen

Popup Menu - Untereinträge hinzufügen und löschen

Ein Thema von Natalia · begonnen am 1. Aug 2003 · letzter Beitrag vom 19. Aug 2003
Antwort Antwort
Natalia

Registriert seit: 13. Mai 2003
47 Beiträge
 
Delphi 7 Professional
 
#1

Popup Menu - Untereinträge hinzufügen und löschen

  Alt 1. Aug 2003, 10:33
Hi Leute,

ich möchte zu einem PopupMenu die Untereinträge dynamisch hinzufügen und dann wieder löschen.

Mit dem Hinzufügen klappt's:

Delphi-Quellcode:
   var NewItem : TMenuItem;
   
   for i:=0 to Query1.RecordCount-1 do
    begin
    NewItem := TMenuItem.Create(Self);
    NewItem.Caption:=Query1Feld1.AsString;
    MenuItem1.Add(NewItem);
    Query1.Next;
    end;
Aber wenn ich die Untereiträge mit z. B. diesem Code lösche:
Delphi-Quellcode:
for i:=0 to Query1.Count-1 do
   begin
    MenuItem1.Items[i].Clear;
    NewItem.Free;
    end;
bekomme ich eine Fehlermeldung "Menu außerhalb des zulässigen Bereichs".
Ich habe schon auch die andere Möglichkeiten ausprobiert. Vielleicht ist es einfach, aber ich komme nicht drauf.

Danke schon mal für alle Vorschläge!

[edit=Daniel B]Delphi-Tags korrigiert. Mfg, Daniel B[/edit]
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#2

Re: Popup Menu - Untereinträge hinzufügen und löschen

  Alt 1. Aug 2003, 10:49
Das sollte alle Items aus einem Untermenu (oder Hauptmenu) löschen:
Delphi-Quellcode:
    while SubMenu.Count > 1 do
     begin
      SubMenu.Items[SubMenu.Count-1].Free;
     end;
Hoffe das hilft
Alexander
  Mit Zitat antworten Zitat
Natalia

Registriert seit: 13. Mai 2003
47 Beiträge
 
Delphi 7 Professional
 
#3

Re: Popup Menu - Untereinträge hinzufügen und löschen

  Alt 1. Aug 2003, 10:58
Super, es funktioniert!

Ich habe nur geändert -> SubMenu.Count > 0.

Vielen Dank!
  Mit Zitat antworten Zitat
st2000

Registriert seit: 23. Apr 2003
Ort: Hamburg
52 Beiträge
 
Delphi 5 Enterprise
 
#4

Re: Popup Menu - Untereinträge hinzufügen und löschen

  Alt 19. Aug 2003, 09:27
Hallo,

ich baue auch dynamische PopUps. Aber ich benutze dafür TActions. Und dort ist auch die enabled-Eigenschaft gespeichert.
Stehen alle auf enabled=true, aber bleiben grau !

Auch dann, wenn ich entweder

-explizit die menuitem.enabled:=true setze, oder
-TAction.enabled:=true setze

Es will einfach nicht enablen !

Weiss jemand, wie man das hinkriegt ?

GRuss,
ST2000
Stefan
Keine Softwarepatente ! Die Polen = wahre Freiheitskämpfer !!! Gerade noch rechtzeitig Mitglied geworden, um die Notbremse zu ziehen. Year !!!
  Mit Zitat antworten Zitat
st2000

Registriert seit: 23. Apr 2003
Ort: Hamburg
52 Beiträge
 
Delphi 5 Enterprise
 
#5

Re: Popup Menu - Untereinträge hinzufügen und löschen

  Alt 19. Aug 2003, 11:45
Hallo, Alarm zurück, habs gefunden.

Lag nur daran, daß ich erstmal keine Eventhandler programmiert hatte.
Das veranlasst die TActions -ohne daß dies in der Hilfe dokumentiert wäre, oder einen Hint auslösen würde, grrrrr -
dazu, trotz enabled=true-setting keinen Mucks zu "sagen"....

Gruss,
ST2000
Stefan
Keine Softwarepatente ! Die Polen = wahre Freiheitskämpfer !!! Gerade noch rechtzeitig Mitglied geworden, um die Notbremse zu ziehen. Year !!!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz