Forum

Forum index -> Komponenten / Anwendungen -> TextEdit Temperaturwert
hronny <p>TextEdit Temperaturwert</p>
User
Registered at: 19.01.2016
Messages: 109

Ich soll ein Eingabefeld in die Visu einfügen, mit dem man eine Temperatur eingeben kann. Nun kann man aber nur "Zeichenketten" verknüpfen. Wie könnte ich das nun machen, damit ein Floatwert oder Ganzzahlenwert heraus kommt?
Eigentlich vermisse ich die Angaben wie in der Komponente "Touch Werteingabe" das Format, Faktor, Min/Max. Nur kann ich nicht 100 Touchedit Komponenten einfügen, das kostet viel mehr Ressources als eine normale TextEdit Komponente. Noch dazu brauche ich die ganzen Buttons und die Grafiken der Schaltflächen nicht.

Ich hatte kurzzeitig die Hoffnung es mit Hilfe der StringParser Komponente zu schaffen, allerdings kommt da kein Wert raus wenn ich folgenden Code nutze:

	htOutput.Clear();
	try {
		if (sInput != null) {
			if (!string.IsNullOrEmpty(sInput)) {
				htOutput["ausgang"] = new DataPoint2OctetFloatValue(sInput);
			}
		}
	} catch( Exception ) {
	}

Jetzt gehen mir die Ideen aus :roll:

Viele Grüße
Ronny

16.01.2011 15:39
Dirk Hofher <p>TextEdit Temperaturwert</p>
Moderator
Registered at: 18.01.2016
Messages: 582

Hi Ronny,

wir überlegen noch...

19.01.2011 11:51
Dirk Hofher <p>TextEdit Temperaturwert</p>
Moderator
Registered at: 18.01.2016
Messages: 582

Hi Ronny,

diese Touchwerteingabe-EisComp hat jetzt ca. 5 KB weniger. Würde das erstmal weiterhelfen?

19.01.2011 12:16
User logged off <p>TextEdit Temperaturwert</p>
User
Registered at:
Messages:

Hey Ronny,

mit dem folgenden Code sollte die Sache mit dem StringParser funktionieren.

htOutput.Clear();
try
{
if(sInput != null && sInput != string.Empty)
{
htOutput["ausgang"] = new DataPoint2OctetFloatValue(Convert.ToSingle(sInput));
}
}catch( Exception ){}

19.01.2011 13:05
hronny <p>TextEdit Temperaturwert</p>
User
Registered at: 19.01.2016
Messages: 109

Hallo ihr beiden!

Also das mit dem Toucheingabe werde ich so testen. Vorteil wäre das ich den Wert auch wieder in dem Feld anzeigen lassen könnte. Was mir aufgefallen ist, dass obwohl in der Einstellung "Fließkomma erlaub" ausgeschaltet ist, kann man Fließkommazahlen eingeben und mit ENTER auch absenden. Das sieht man, wenn man einen "Wertabhängigen Text" damit verknüpft. Die Einstellung ändert so wie es aussieht, die Darstellung in dem Feld. Gut ist mir erstmal egal, wenn es damit funktioniert bin ich glücklich :-)

Auch wenn mir Boris Lösung besser gefiele, funktioniert dieser Code nicht bzw bewirkt er bei mir (Version 1.4.0.0) nichts. Ich hänge einfach mal die EisComp an. Denn ich gehe mal davon aus da die Multikonverter Komponente sicher genauso funktioniert, wäre es gut so eine Funktion nutzen zu können.

Danke und viele Grüße!
Ronny

19.01.2011 14:02
User logged off <p>Re: TextEdit Temperaturwert</p>
User
Registered at:
Messages:

Hey Ronny,

der Code muss in der Parse()-Funktion stehen. Im Anhang die korrigierte EisComp.

public override void Parse( string sInput, Hashtable htOutput )
{
....hier muss der Code stehen!
}

19.01.2011 14:36
hronny <p>Re: TextEdit Temperaturwert</p>
User
Registered at: 19.01.2016
Messages: 109

Hi!

So nachdem ich auf der Baustelle war und mit den beiden Möglichkeiten getestet habe, muss ich nun sagen, dass die TouchEdit Komponente die bessere Wahl war. Nachdem (wie im Beispiel) die Grafiken und der Button entfernt waren sah man keinen Unterschied zum "normalen" Textfeld und somit war ich froh das es ging. Zudem brauchte ich auch den Parameter "Faktor", da ich andere Werte anders bekomme und erst errechnen muss. Und damit das ganze immer funktioniert und die Ist und Sollwerte stimmen besitzt die Touch Werteingabe noch den Statuseingang. Der war gaaanz wichtig.
Genau das war zum Schluss das Scheitern des Stringparsers, da man genau das Problem nicht lösen kann.

Noch eine Frage an die Entwickler: In der Beta ist nun auch endlich die Höhenangabe für die Touch Werteingabe verfügbar. Könntet ihr noch die Ausrichtung des Textes hinzu programmieren, die fehlt mir noch ;-)
Und vielleicht noch ein Parameter, mit dem man verhindern kann, dass man mit ENTER in das nächste Editfeld springt. Für den Bediener ist das nicht verständlich. Ganz schlimm ist es wie bei mir, wo ich nun so viele Felder habe und die angelegte Reihenfolge etwas von der Anordnung in der Seite abweicht sieht es komisch aus, wenn der Cursor sonst wo auf der Seite landet :-D

Viele Grüße
Ronny

[ Geändert von hronny am 23.01.2011 19:37 ]

23.01.2011 19:29
Log in