AGB  ·  Datenschutz  ·  Impressum  







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

Untermenü per Programm aufrufen

Ein Thema von Antigonos · begonnen am 14. Nov 2006 · letzter Beitrag vom 15. Nov 2006
Antwort Antwort
Antigonos

Registriert seit: 28. Aug 2006
Ort: 57644 Hattert
4 Beiträge
 
Delphi 7 Professional
 
#1

Untermenü per Programm aufrufen

  Alt 14. Nov 2006, 15:36
Hallo,

gibt es eine Möglichkeit ein Untermenü mit mehreren Einträgen aus dem Programm heraus aufklappen zu lassen. Mit der Maus ist das ja kein Thema, aber ich finde keine Möglichkeit das übers Programm hinzukriegen.
Hintergrund ist, dass ich ein Untermenü alternativ über einen Hotkey aufklappen möchte. Das Click-Event ist dafür untauglich weil es nur die Zeilen in OnClick ausführt.

Alternativ kann ich natürlich ein Popup-Menu erzeugen und dieses anzeigen, ist aber nicht so elegant und einfach.
  Mit Zitat antworten Zitat
JonnyGuitar

Registriert seit: 4. Jun 2004
233 Beiträge
 
#2

Re: Untermenü per Programm aufrufen

  Alt 14. Nov 2006, 16:31
hi,
könntest du dein problem etwas näher erläutern, ich verstehe nicht genau was du meinst.


mfg Jonny
the only thing to fear is runnin' out of beer
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#3

Re: Untermenü per Programm aufrufen

  Alt 15. Nov 2006, 01:55
meinst du beim TPopupmenu? wenn ja dann TPopupmenu.Popup(x,y)

Gruß Frank
  Mit Zitat antworten Zitat
Antigonos

Registriert seit: 28. Aug 2006
Ort: 57644 Hattert
4 Beiträge
 
Delphi 7 Professional
 
#4

Re: Untermenü per Programm aufrufen

  Alt 15. Nov 2006, 10:18
Ganz einfach ausgedrückt: Du kennst das typische Hauptmenü mit Datei, Bearbeiten, Fenster .... Jedes dieser Menüpunke hat Untermenüs. Unter Datei steht i.d.R. "Neu", "Ändern" und "Löschen". Ein Klick mit der Maus auf "Datei" klappt das Untermenü auf. Nun möchte ich aber dieses Untermenü per Hotkey aufklappen lassen. Wie lässt sich also der Mausklick simulieren. Mit der Methode "Click" des Menuitems klappt es leider nicht
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#5

Re: Untermenü per Programm aufrufen

  Alt 15. Nov 2006, 10:58
wenn du dem Menüpunkt ein Alt-Kürzel (Unterstrichener Buchstabe, Accelerator, kA wie man das genau nennt, Caption mit & vor dem jeweiligen Buchstaben) gönnst kannst du das so realisieren:

Delphi-Quellcode:
datei1.caption='&datei';

procedure TForm1.Button1Click(Sender: TObject);
const VK_D=$44;//kannst du evtl weglassen
begin
  keybd_event(VK_MENU, 0, 0, 0);
  keybd_event(VK_D, 0, 0, 0);
  keybd_event(VK_D, 0, KEYEVENTF_KEYUP, 0);
  keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0);
end;
Gruß Frank
  Mit Zitat antworten Zitat
Antigonos

Registriert seit: 28. Aug 2006
Ort: 57644 Hattert
4 Beiträge
 
Delphi 7 Professional
 
#6

Re: Untermenü per Programm aufrufen

  Alt 15. Nov 2006, 14:32
Hallo Frank,

wie sieht denn die Prozedur keybd_event aus? Wie dem auch sei, ich hab mich leider nicht korrekt ausgedrückt. Mein Problem beschränkt sich auf die Toolbar2000 von Jordan Russell, die ähnliche Funktionen wie ein Windows-Menü hat, u.a. auch sogenannte SubMenuItems mit Untermenüs.

Klickt man auf einen solches SubMenuItem, klappt darunter ein Menü mit weiteren Items auf. Nun möchte ich, dass der Benutzer solche Menüs auch per Hotkey öffnen kann. Bei einem gewöhnlichen Menü drückt man einfach Alt + "Accelerator-Taste". Bei einem Toolbutton gibts aber keinen solchen. Die Click-Routine des Toolbuttons öffnet leider nicht das Untermenü

Gruß Wilfried!
  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 02:58 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