INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

27.08.2010, 09:44 (Dieser Beitrag wurde zuletzt bearbeitet: 27.08.2010 09:46 von Dommas.)
Beitrag #1

Dommas Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 93
Registriert seit: Jul 2010

2010
2008
DE_EN

86741
Deutschland
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
Hallo zusammen!

Ich habe mal wieder eins von meinen spezial-Problemen:

Ich muss die Länge eines Strings auf 15 Zeichen beschränken, und ggf mit Blanks auffüllen. Soweit kein Problem und funktioniert auch (erster Teil der Sequenz unten). Wenn ich hier in den Inputstring was reinschreibe schneidet er mir das genau so ab wie ich das gerne hätte und zeigt mir auch alles so an wie ich es brauche.

Mein Problem ist jetzt, dass ich kein "normales" String-Element habe, sondern es Teil eines Clusters ist und von diesem Cluster aus befüllt werden soll und, an anderer Stelle, das Cluster quasi einfach angezeigt wird.
Hier schaffe ich es aber einfach nicht auf das gleiche Ergebnis wie oben zu kommen.

Hat von Euch jemand einen Tip für mich? Wenn es auch noch ohne die Sequenz geht wäre das natürlich noch toller.
Danke schon mal!
Gruß
Dommas


Lv09_img2


Angehängte Datei(en) Thumbnail(s)
   

Sonstige .vi  Stringl_nge_Cluster.vi (Größe: 11,44 KB / Downloads: 244)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
27.08.2010, 09:55
Beitrag #2

SeBa Offline
LVF-Guru
*****


Beiträge: 2.025
Registriert seit: Oct 2008

09SP1 & 10 FDS
2008
DE

65xxx
Deutschland
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
Dein Beispiel funktioniert doch... also ich versteh die Frage nicht...


Lass einfach die lokalen Variablen weg und zieh Drähte.. dann brauchst du auch keine Sequenzstruktur.



Gruß SeBa

Dieser Beitrag soll weder nützlich, informativ noch lesbar sein.

Er erhebt lediglich den Anspruch dort wo er ungenau ist, wenigstens eindeutig ungenau zu sein.
In Fällen größerer Abweichungen ist es immer der Leser, der sich geirrt hat.

Rette einen Baum!
Diesen Beitrag nur ausdrucken, wenn unbedingt nötig!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.08.2010, 10:04
Beitrag #3

M Nussbaumer Offline
Zarathustra
****


Beiträge: 654
Registriert seit: Sep 2009

2009 SP1
2009
EN

6300
Schweiz
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
Ein (String)-Control aus einem Cluster kannst du so auslesen:

Labview 8.5:

Sonstige .vi  Cluster_auslesen.vi (Größe: 11,51 KB / Downloads: 259)


Vorrausetzung ist, dass du das Label nicht mehr änderst.

Hoffe das hilft dir weiter

Gruss MNussbaumer
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.08.2010, 10:07
Beitrag #4

Dommas Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 93
Registriert seit: Jul 2010

2010
2008
DE_EN

86741
Deutschland
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
' schrieb:Dein Beispiel funktioniert doch... also ich versteh die Frage nicht...

im Prinzip schon, aber nicht ganz so, wie ich will.
Im Ausgabe String werden nur 15 Zeichen angezeigt. Aber im Eingabestring kann ich unbegrenzt tippen. Ist ja auch logisch, diesen Wert begrenze ich ja nicht. Eine Lokale Variable wie mit "InputString" kann ich nicht machen; PropertyNode ginge erstellen, aber ich weiß ehrlich gesagt nicht, was ich da auswählen muss.


' schrieb:Lass einfach die lokalen Variablen weg und zieh Drähte.. dann brauchst du auch keine Sequenzstruktur.

Ich würde sagen in diesem Fall brauch ich doch die lokalen Variablen! Ich schaue, ob der Inputstring mehr als 15Zeichen hat. wenn das zutrifft überschreibe ich den aktuellen Wert mit dem von einem Schleifendurchlauf früher.
Wenn ich aus der Case Strukur einen Draht auf das BundleByName mache muss ich den 2ten Case ja auch irgendwie verbinden. Hier brauche ich also auch in jedem Fall eine Variable, oder sehe ich was falsch?

Danke schön!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.08.2010, 10:14 (Dieser Beitrag wurde zuletzt bearbeitet: 27.08.2010 10:29 von Dommas.)
Beitrag #5

Dommas Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 93
Registriert seit: Jul 2010

2010
2008
DE_EN

86741
Deutschland
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
Hallo MNussbaumer,

sorry, aber Dein VI verstehe ich nicht wirklich. Deswegen kann ich das auch nicht so umbauen dass es mir was hilft...
Kannst Du mir das bitte kurz erklären?


EDIT:
Ich habs zwar immernoch nicht verstanden, was ich hier jetzt genau mache, aber ich habs geschafft das Ding so umzubauen, dass es tut, was ich brauchSmile

Danke schön!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.08.2010, 10:28
Beitrag #6

M Nussbaumer Offline
Zarathustra
****


Beiträge: 654
Registriert seit: Sep 2009

2009 SP1
2009
EN

6300
Schweiz
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
Also du liest aus dem Cluster zuerst alle Controls aus:
Das ist das Referenz-Array. Aus der Referenz mit dem Namen des gewünschten Controls liest du dann den Wert aus.

Also:
1) Alle Elemente des Clusters auslesen -> Wir erhalten ein Array mit den Referenzen auf die Elemente des Clusters
2) Mittels der Eigenschaft Label (kA wie das in Deutsch ist) wird nun die gewünschte Referenz rausgefiltert
3) Auslesen des Wertes, da aber Cluster mehrere Datentypen haben kann kommt dort der Datentyp Variant raus
4) Umwandeln des Variant in String

Hoffe das ganze ist jetzt etwas klarer! Solltest du noch Fragen haben oder meine Erklärung zu ungenau sein einfach wieder melden

Gruss MNussbaumer
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.08.2010, 10:59
Beitrag #7

SeBa Offline
LVF-Guru
*****


Beiträge: 2.025
Registriert seit: Oct 2008

09SP1 & 10 FDS
2008
DE

65xxx
Deutschland
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
Warum dem User gestatten beliebig lange Strings einzutippen, nur um ihn dann damit zu quälen, dass die signifikanten Stellen 16 bis 23 einfach stillschweigend weggeschnitten werden?

So was z.b: "Versuchsaufbau_Datum_Prüfer_wasauchimmer"

Einfach gleich nur 15 Zeichen erlauben und fertig.

Snippet2009
   


Gruß SeBa

Dieser Beitrag soll weder nützlich, informativ noch lesbar sein.

Er erhebt lediglich den Anspruch dort wo er ungenau ist, wenigstens eindeutig ungenau zu sein.
In Fällen größerer Abweichungen ist es immer der Leser, der sich geirrt hat.

Rette einen Baum!
Diesen Beitrag nur ausdrucken, wenn unbedingt nötig!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.08.2010, 11:10
Beitrag #8

Dommas Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 93
Registriert seit: Jul 2010

2010
2008
DE_EN

86741
Deutschland
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
So, habe das Ding jetzt mal ein bischen kommentiert in der Hoffnung dass es mal jemand hilft, wenn er das gleiche Problem hat.

Gruß Dommas


Lv09_img2


Angehängte Datei(en)
Sonstige .vi  Stringl_nge_Cluster.vi (Größe: 18,3 KB / Downloads: 228)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.08.2010, 11:13
Beitrag #9

Dommas Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 93
Registriert seit: Jul 2010

2010
2008
DE_EN

86741
Deutschland
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
@SeBa:

Ich habe nie behauptet, dass das nicht einfacher geht! Deswegen habe ich ja diesen Thread eröffnet, weil ich es nicht hinbekommen habe.
Aber kann ich bei Deiner Lösung sagen, "fülle mit Blanks auf, bis der String 15 Zeichen hat"?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.08.2010, 11:43
Beitrag #10

SeBa Offline
LVF-Guru
*****


Beiträge: 2.025
Registriert seit: Oct 2008

09SP1 & 10 FDS
2008
DE

65xxx
Deutschland
feste Stringlänge; entweder mit "Blanks" auffüllen oder abschneiden
' schrieb:@SeBa:

Ich habe nie behauptet, dass das nicht einfacher geht! Deswegen habe ich ja diesen Thread eröffnet, weil ich es nicht hinbekommen habe.
Aber kann ich bei Deiner Lösung sagen, "fülle mit Blanks auf, bis der String 15 Zeichen hat"?


Ich hab auch nie bahauptet du hättest behauptet, dass....


Was hindert dich daran, den String aufzufüllen?

Snippet2009
   



Gruß SeBa

Dieser Beitrag soll weder nützlich, informativ noch lesbar sein.

Er erhebt lediglich den Anspruch dort wo er ungenau ist, wenigstens eindeutig ungenau zu sein.
In Fällen größerer Abweichungen ist es immer der Leser, der sich geirrt hat.

Rette einen Baum!
Diesen Beitrag nur ausdrucken, wenn unbedingt nötig!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Feste Werte aus XY-Graph auslesen/bestimmen jagu22 3 5.147 23.12.2017 14:28
Letzter Beitrag: Lucki
  Arrays verbinden ohne Auffüllen mit 0 Hachiko 5 6.075 27.02.2014 16:23
Letzter Beitrag: Hachiko
  Button entweder drücken oder gedrückt halten Golan 16 15.014 13.03.2013 14:08
Letzter Beitrag: Golan
  Entweder oder Abfrage von 2 clustern cherry 5 6.188 19.06.2012 13:40
Letzter Beitrag: Y-P
  Case-Struktur Grün oder Rot darstellen bei true oder false TobiasSch 14 14.956 23.01.2012 09:32
Letzter Beitrag: TobiasSch
  Array auffüllen Borg-Cube 4 5.276 02.12.2011 15:16
Letzter Beitrag: Borg-Cube

Gehe zu: