AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Speedbutton mit Hauptmenuepunkt?

Ein Thema von Mattze · begonnen am 18. Nov 2015 · letzter Beitrag vom 19. Nov 2015
Antwort Antwort
Seite 1 von 2  1 2      
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#1

Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 12:21
Hallo,

wie kann man einem Speedbutton ein Menuitem (sprich: das zugehörige "Popup"-Menue) zuordnen.

Wäre in meinem Falle günstiger als ein weiterer TToolbutton.

Gruß
Mattze
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#2

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 12:27
Moin...

zuordnen gar nicht. Du kannst das Popupmenü selbst positionieren, öffen und schließen.

Wer lesen kann ist klar im Vorteil. Die Property PopupMenu gibt´s doch...

Geändert von haentschman (18. Nov 2015 um 14:24 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 12:31
Willst du ein Popup-Menu dem SpeedButton zuordnen? Dann der Eigenschaft PopupMenu das entsprechenden PopupMenu Zuweisen.

Soll der SpeedButton die gleiche Aufgabe wie das MenuItel erfüllen: TAction anschauen

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#4

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 12:37
Hallo,

habe ich ja eigentlich geahnt!
Meinst Du mit dem Tipp, ein eigenes Popupmenu mit den "gleichen Einträgen" wie im Hauptmenue basteln?

Daran hatte ich jedenfalls auch schon gedacht. Aber, irgendwie, war das wohl nicht sooo schön bequem...

Auf die Gefahr hin, dass ich jetzt einen lauten Aufschrei höre (obwohl ich gehörlos bin!):
Ich fand TAction immer ziemlich sinnlos. Vielleicht auch deshalb, weil ich das Konzept dahinter nicht richtig verstanden habe. Was hindert mich, mehreren Buttons die gleiche Onclick-Methode zuzuordnen. Was macht TAction besser?

Gruß
Mattze
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 12:44
Was macht TAction besser?
TAction verwaltet z.B. auch verschiedene Statuswerte (z.B. Enabled, GroupIndex, ImageIndex, Caption usw.) deren Änderung sich auf alle angehängten Clients auswirken. So kann man mit einer Zuweisung gleich alle Buttons/Menus/Popupmenus in- oder ausschalten. Außerdem können mit dem Update-Event einer TAction diese Eigenschaften verwaltet werden ohne selbst viele Statusvariablen verwalten zu müssen.
Ralf Kaiser
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#6

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 12:58
Hallo,

diese Möglichkeit von TAction habe ich vor ganz Kurzem erst bemerkt.
Wenn man einem Menupunkt ein Untermenu zuordnet, geht das automatische Checked setzen nur per TAction.

Komisch, aber (scheinbar) wahr.

Falls das nicht anders zu machen geht, werde ich wohl doch mal auf TAction übergehen müssen...

Gruß
Mattze
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#7

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 13:10
@Mattze:

Offenbar hast du ein HauptMenü (TMainMenu) mit diversen Einträgen und dazu entsprechende Event-Handler. Nun möchtest du via Buttonklick eines dieser Events auslösen. Nichts leichter als das: Dem OnClick des Buttons weist du einfach den Event-Handler zu. Bei Verwendung von TAction weist du dem Action-Property einach das jeweilige TAction-Item zu; damit erhält dein Button dieselbe Caption und reagiert auf denselben Event-Handler.
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#8

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 18:39
Hallo,

das ist schon klar und kein Problem.

Meine Frage, vielleicht deutlicher:
Ich habe ein Hauptmenu mit 4 Items (Datei, Bearbeiten, Ansicht, Hilfe).
An den Items hängen dann natürlich die "Untermenüs" dran.
Mein Problem:
Ich möchte das "Untermenü", das an Hilfe hängt, über einen Speedbutton aufrufen.
Bloß wie? Einen Namen hat es ja nicht, oder?

Gruß
Mattze
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#9

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 19:17
Schau einfach nach:
Delphi-Quellcode:
  for i := 0 to Application.MainForm.Menu.Items.Count - 1 do begin
    ShowMessage(TMenuItem(Application.MainForm.Menu.Items[i]).Caption + #13
              + TMenuItem(Application.MainForm.Menu.Items[i]).Name);
  end;
Wenn Du ein Hauptmenü (TMainMenu) auf dem Formular hast, dann muss es (eigentlich) auch die entsprechenden Einträge für die Untermenüs geben und die müssten auch Namen haben.

Soll denn das Untermenü der Hilfe dann am Speedbutton erscheinen oder soll im Hauptmenü das Menü Hilfe aufgeklappt werden?

Suchst Du eher sowas hier? http://www.delphi-treff.de/tipps-tri...nu-aufklappen/
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#10

AW: Speedbutton mit Hauptmenuepunkt?

  Alt 18. Nov 2015, 20:03
Ob ich dich richtig verstanden habe, weiß ich nicht genau.

Bloß wie? Einen Namen hat es ja nicht, oder?

Gruß
Mattze
Ein Menupunkt z.B. Hilfe hat ganz sicher einen Namen. Wenn du ihn über die GUI angelegt hat, dann lautet er wahrscheinlich "Hilfe1". Dieses MenuItem hat dann Items, die selbst auch TMenuItems sind und eben als SubMenu angezeigt werden.
Jetzt könnte man denken, dass sich ein MenuItem auch einem zweiten Menu zuordnen ließe. Dem ist aber nicht so. Man erhält dann die Exception "Menü zweimal eingefügt".

Aber du könnte die dir einfach eine Kopie des Submenus in ein Popupmenu kopieren.

Ich habe mal einen Beispielcode angehängt. Ggf. ist das das was du machen willst. Ist natürlich nur ein Beispiel. Eigenschaften wie ImageIndex, SubMenuImages, Checked, Enabled usw. kannst du ja bei Bedarf selber noch ergänzen.

[Edit] Nach nochmaligem Lesen des Threads habe ich doch das Gefühl dich falsch verstanden zu haben. Aber je nach Delphiversion verfügt ein TButton über die Eigenschaften DropDownMenu und Style, den man auf bsSplitButton setzen kann und mit dem Popupmenu verbinden kann. Das ermöglicht dann vielleicht etwas in der Art, was du dir vorstellst [\Edit]
Angehängte Dateien
Dateityp: rar PopupMenuTest.rar (644,9 KB, 7x aufgerufen)
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo

Geändert von Captnemo (18. Nov 2015 um 20:45 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 23:02 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