LabVIEWForum.de
Laufzeit Kontextmenü anpassen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Laufzeit Kontextmenü anpassen (/Thread-Laufzeit-Kontextmenue-anpassen)



Laufzeit Kontextmenü anpassen - jan91 - 19.01.2010 12:37

Hallo Zusammen,

ich möchte gerne das Laufzeit Kontextmenü nutzen, um dem Bediener kleine Anweisungen und Hilfestellungen zu geben.

Da ich eine grosse Anzahl an Bedienelementen habe, würde ich am liebsten die Standard Funktion "Beschreibung und Tipp" benutzen, diese aber gerne modifizieren:
+ Texte der Überschriften ändern (z.B. deutsch / englisch)
+ die Taste "Hilfe" entfernen
...

Am liebsten würde ich das VI "APP_SC_DESCRIPTION_AND_TIP" ,oder was sich auch immer dahinter verbirgt, durch ein eigenes VI ersetzen, da der User an besten auch die "Beschreibung" erweitern können soll.

Gibt es einen Weg dies zu realisieren, ohne für jedes meiner vielen Bedienelemente eine Eventstruktur zu bauen?

MfG

jan


Laufzeit Kontextmenü anpassen - schrotti - 19.01.2010 17:39

Den bei "APP_SC_DESCRIPTION_AND_TIP" erscheinenden Dialog kannst du nicht ändern. Wenn du ein eigenes VI aufpoppen lassen willst, gehts nicht hne Eventstruktur, denn nur die kann die erhält das Tag des ausgewählten Eintrags des Kontextmenüs. Allerdings langt eine Eventstruktur für eine beliebige Anzahl an Elementen. Und was noch besser ist, es langt auch ein einziger Case.

Vielleicht reicht dir aber auch der Tooltip, der erscheint, wenn der User mit der Maus kurze Zeit über einem Element verweilt?


Laufzeit Kontextmenü anpassen - jan91 - 20.01.2010 07:59

Hallo schrotti,

das habe ich schon befürchtet, werde dann mal diesen Weg gehen.

Den Tooltip werde ich zusätzlich nutzen.

Vielen Dank

jan


Laufzeit Kontextmenü anpassen - jan91 - 20.01.2010 15:00

Hallo schrotti,

muss ich alle meine Bedienelemente einzeln in der Eventstruktur auswählen

oder

gibt es eine einfachere Möglichkeit, bei der die Eventstruktur bei jedem vorhandenen Bedienelement ausgelöst wird und mir die Ref. des Bedienelements
übergibt ?


Gruß

jan


Laufzeit Kontextmenü anpassen - schrotti - 21.01.2010 00:36

am besten geht es wenn dus dynamisch umsetzt. Ich mach das so, dass ich die Namen der Elemente nach einem bestimmetem Schema vergebe, durch welches die Eventregestrierung festgelet wird. Den Namen der Elemente werte ich bei Programmstart aus. Ich kann dir morgen Abend, falls dus nicht selber hinbekommst, ein Beispiel erstellen.


Laufzeit Kontextmenü anpassen - jan91 - 21.01.2010 08:23

Ich habe schon ein wenig mit der Eventregistrierung rumprobiert, aber bisher noch keine zufriedenstellende Lösung gefunden.

Ein kleines Beispiel wäre schon toll.

Danke

jan


Laufzeit Kontextmenü anpassen - schrotti - 21.01.2010 21:16

Im Beispiel parse ich den Namen des Elements und weise ihm dann ein Menü zu. Viel Spaß damit.

Lv09_img2[attachment=23843]


Laufzeit Kontextmenü anpassen - jan91 - 05.02.2010 09:55

Hallo schrotti,

das mit der selbstgebauten Kontexthilfe über die Eventregistrierung habe ich nun hinbekommen, funktioniert super.
Vielen Dank nochmal für deine Unterstützung.

Da ich aus Übersichtsgründen viel mit Registern arbeite, stellt sich mir nun die Frage, ob es eine Möglichkeit gibt, den einzelnen Reitern (Seiten) eines Regsiters verschiedene Events (und damit unterschiedliche Kontexthilfen) zuzuordnen?

Bisher habe ich da keinen Weg gefunden.

Gruß
jan


Laufzeit Kontextmenü anpassen - schrotti - 05.02.2010 20:20

Du kannst doch vor dem Erstellen des Menüs den Wert des Registers (also desen geöffnete Seite) auslesen und demenstprechend reagieren. Sollte eigentlich kein Problem darstellen.


Laufzeit Kontextmenü anpassen - jan91 - 08.02.2010 08:33

Hallo schrotti,

der User sollte eigentlich die Möglichkeit haben, sich durch einen "rechtsklick" auf die Reiterkarten auch über z.Z. nicht geöffnete Seiten zu informieren.

Für bereits geöffnete Seiten müsste dein Tipp eigentlich funktionieren, auf die einfachsten Dinge kommt man halt nicht.

Dank

jan