LabVIEWForum.de
virtuelle Tastatur - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: virtuelle Tastatur (/Thread-virtuelle-Tastatur)



virtuelle Tastatur - ichmaglachs - 19.12.2015 22:29

Heyo

Auf Grundlage von VI-Beispielen habe ich diese Eingabekonsole geschrieben. Mein Problem ist ich kann nicht anders als durch einen tatsächlichen Druck auf die Clear-Taste die Clear-Funktion auslösen.
Ich würde aber gerne die Clear-Funktion auslösen durch ein Boealen-Signal.
Da ich an der Stelle die Program-Architektur nicht ganz durchblicke (wie gesagt ich hab mich da an Beispielen abgearbeitet) weiß ich nicht wie ich die Clear-Funktion über ein Boalen beeinflussen kann.


Im Anhang hab ich zwei Screenshoots und ich hab das VI in den Anhang gelegt. Das ist aber in der Version 2015 und ist darum unter umständen nicht zu öffnen.
Und ja ich bin Mac-User Blush Angel


Grüße und vielen Dank schon mal


RE: virtuelle Tastatur - jg - 20.12.2015 09:21

Offtopic2
Wenn du dein VI für eine frühere Version speicherst als lv15_img, dann erreichst du mehr Leute.

Gruß, Jens


RE: virtuelle Tastatur - ichmaglachs - 20.12.2015 09:43

ich wusste nicht das es funktioniert. Aber danke für den Tip


RE: virtuelle Tastatur - IchSelbst - 20.12.2015 11:55

Hallo ichmaglachs

Ich sehe große Aufgaben auf dich zukommen - oder weniger diplomatisch: schwerwiegende Probleme, wenn du deinen Programmierstil so beibehälst.

(19.12.2015 22:29 )ichmaglachs schrieb:  Ich würde aber gerne die Clear-Funktion auslösen durch ein Boealen-Signal.
Eigentlich ganz einfach: Schreibe den Wert nicht in das Anzeigeelement an sich, auch nicht in eine Lokale Variable des Anzeigeelementes, sondern in den Eigenschaftsknoten "Wert(signalisierend)". Das bewirkt nämlich, dass - wenn sich das Element in der Ereignis-Struktur befindet - ein Event ausgelöst wird. Du kannst die Event-Quellen "Boolsches Anzeigeelement" und "Taste" ein einen einzigen Case legen.

Außerdem solltest du dir mal folgendes überlegen:
Verwendet nicht 10 einzelne Elemente "Regulären Ausdruck suchen", sondern versuche dieses komplizierten, nicht wiederverwendbaren Algorithmus umzuschreiben in eine Struktur, die mit Arrays und For-Schleifen arbeitet. Weitsichtiger Vorteil: Du kannst ein SubVI erstellen, das als Eingang sowohl die Sollwerte also auch die Istwerte der Eingabe enthält. Dieses SubVI kannst du dann für alle Levels verwenden und jeden beliebige Länge verwenden. Weiterer unschlagbarer Vorteil: Dein Blockdiagramm wird endlich übersichtlich.

Außerdem:
Warum verwendest du in den Event-Cases den Typ "Maustaste losgelassen" und nicht den Typ "Wertänderung"? Ich würde Wertänderung verwenden.


RE: virtuelle Tastatur - IchSelbst - 20.12.2015 17:33

Hallo ichmaglachs

Ich mag gern FGVs (funktionale globale Variablen). Eine FGV ist ein SubVIs, das Daten ("globale Variablen") enthaltet und "funktional" ist, d.h. das SubVI beinhaltet Methoden zur Bearbeitung der (internen) Daten. Eines der vielen, schönen Sachen an einer FGV ist, dass sie unabhängig von einem User-Frontend ist.

Ich hab mal ein Beispiel gemacht, wie ich mir einen (eigentlich applikationsunabhängigen) Programmaufbau vorstelle.


LV2014


RE: virtuelle Tastatur - ichmaglachs - 20.12.2015 18:07

da kommt mir nur noch ein "Wau" über die Lippen, das ist irre,
jetzt weiß ich erstmal was ich mir nochmal aneigene muss.

Ich hab mich den Tag über mit deinen Anregungen beschäftigt und bin grade mal halb soweit gekommen
Vielen Dank!


RE: virtuelle Tastatur - GerdW - 21.12.2015 08:55

Hallo ichmaglachs,

außerdem:
Wann immer du ein VI produzierst, bei dem du zwei STOP-Buttons benötigst, um das VI zu beenden, hast du etwas falsch gemacht!
In dem Fall: du hast dir keine vernünftige Programmstruktur überlegt!
(Eigentlich muss man zusätzlich noch den "Enter"-Button klicken - ist für den User so ersichtlich, wie er dein Programm beenden kann???)

Ansonsten:
- Warum ist "Clear" ein Array of booleans? Warum zwei solcher Arrays - nur, damit man mit dem einen das andere initialisieren kann? Hmm
- LabVIEW hat eine AutoCleanup-Funktion - und ein eigenes StyleGuide-Kapitel in der LabVIEW-Hilfe!
- "Bunte" Bedienoberflächen sind Geschmackssache - da kann man eigentlich nicht drüber streiten. Ärgern kann man sich trotzdem…
- Zum UI-Design: Auch hier sollten klare Grundsätze erkennbar sein. Du verwendest diverse unterschiedliche "Stile" deiner Buttons - und keiner davon ist irgendwie konform zu StyleGuides der üblichen Betriebssysteme…


RE: virtuelle Tastatur - Trinitatis - 28.12.2015 18:35

Hallo,

falls jemand hier mit der Suchfunktion über den Begriff "virtuelle Tastatur" hingelangt ist, wäre es ja möglich, dass er / sie auf der Suche nach einer Möglichkeit zum Öffnen der WINDOWS-Tastatur ist.

Demjenigen sei der Vollständigkeit halber mit angehängtem Bild geholfen.



Gruß, Marko


PS: Ich weiß, dass dies nichts mit den Problemen des thread openers zu tun hat, aber eben mit dem threadnamen.