LabVIEWForum.de - Interaktiver String

LabVIEWForum.de

Normale Version: Interaktiver String
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich bin absoluter Neuling und entschuldige mich vorab für alles was kommt!

Gibt es eine Möglichkeit einem String eine Funktion(link..) zuzuweisen?

Ich logge den kompletten Programmlauf(im Folgenden Output-String genannt) in einem String.
Währenddessen werden verschiedene/mehrere log-Dateien erstellt und gespeichert, diese möchte ich dann per Link aufrufen können.
Diese Links sollen im Output-String angezeigt werden und anklickbar sein.
Ob die Datei in Notepad oder in einem neuen String angezeigt wird sehe ich dann!
Mir geht es nur um: kann ich einem String bzw. einem Wort von einem String Funktionalität zuweisen und wenn ja wie?

Lg
Shiva
Bahn
Kannst Du mal ein Bsp. machen, wie Du das meinst?

Gruß Markus
Weiß nicht genau ob das die genaue Antwort auf Deine Frage ist:

1. Wenn du irgendwelche Elemente deines VI's mit Funktionalität füllen willst, musst du in LabVIEW grundsätzlich mit Eigenschaftsknoten und Methodenknoten arbeiten.

2. Damit könntest Du Deine Strings folgenderweise zur Anzeige/Auswahl Bringen:

[attachment=37794]

Eigenschafts- und Methodenknoten machen LabVIEW mächtig!;-)
Du möchtest so etwas wie einen Hyperlink haben, oder?

Dann kannst Du den Internetexplorer in einem Active-X Control auf dem Frontpanel einbauen. Als Meta-Log-Datei erzeugst Du nun ein einfaches HTML-Dokument, das die Links auf die einzelnen Log-Dateien enthält, und stellst es mit dem eingebetteten IE dar. Der IE kann Text-Datei darstellen, aber ggf. muss die Endung der darzustellenden Textdatei als Textdatei registriert werden.
Vielen Dank Euch schonmal! Top Forum!

Zitat:Du möchtest so etwas wie einen Hyperlink haben, oder?
Genau so etwas möchte ichSmile

Benutze halt einen String Indicator, indem laufend der Programmablauf geloggt wird und Dateien namentlich genannt werden.
Und diese Dateinamen möchte ich gerne verlinken, so dass wenn ich mit der Maus drauf klicke etwas passiert(z.B. Notepad öffnet die Datei etc.)

Geht das?

Ansonsten..
Zitat:Dann kannst Du den Internetexplorer in einem Active-X Control auf dem Frontpanel einbauen. Als Meta-Log-Datei erzeugst Du nun ein einfaches HTML-Dokument, das die Links auf die einzelnen Log-Dateien enthält, und stellst es mit dem eingebetteten IE dar. Der IE kann Text-Datei darstellen, aber ggf. muss die Endung der darzustellenden Textdatei als Textdatei registriert werden.
..versuche ich diese Lösung mal umzusetzen.

Ein Beispiel, welches die Problemstellung illustriert kann ich leider nicht hochladen, hoffe die Erklärung reicht!?
Beim String-Indicator gibt es eine Invoke Methode names Bytes Offset from Point. Damit kann man die Maus-Position in eine Position im String umrechnen. Von der Postion im String müsste man dann nach Leerzeichen suchen, dann Prüfen, ob es sich um einen Dateinamen handelt, und ggf. die Datei dann öffnen.
Das ganze würde durch ein Mouse-Down Event in einer Ereignisstruktur getriggert werden.

Im Falle des IE im ActiveX-Control, müsste man fortwährend neue HTML-Dateien generieren und anzeigen lassen. Den Rest erledigt der eingebettete IE.
Hallo Shiva

Ich verstehe das so, dass du Daten loggst und anschliessend den String mit dem vollen Pfad auf die Datei erhältst. Es würde sich doch anbieten die Pfade in einem Array abzulegen anstatt einem einzelnen String.

Als Alternative zum Lösungsweg über ActiveX gibt es noch die Möglichkeit die Datei über "System Execute"
aufzurufen. Quasi wie über die CMD-Konsole.

Vorteil gegenüber der eingebetteten Variante ist, dass du beliebig viele Files öffnen kannst. Die durch ActiveX eingebettete Variante bietet dafür wiedrum die Möglichkeit die Daten programmatisch auszuwerten.

Ist halt ein abwägenWink

Hier mal mein Vorschlag:

[attachment=37834]
[attachment=37833]

Hoffe das hilft dir weiter!

Gruss Marc

P.s. Das "Array Point to RowCol.vi" ist von lavag.org und einfach genial wenn es darum geht Klick-Events in einem Array zuzuordnenSmile
Nachtrag: Für das aufrufen von mehreren Dateien müsste beim Anschluss "wait until completion(T)" des VI "System Exec.vi" eine False-Konstante angeschlossen werden.

Gruss Marc
Referenz-URLs