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.




Unsere Partner:

DIAdem-Forum.de Partner

DIAdem-Forum.de Partner






Stellenangebote:
Applicationsingenieur (m/w) Testsysteme Central IE Prozessentwicklung
Frankfurt am Main

Senior Softwareentwickler/in
Westliches Ruhrgebiet

Ingenieur/in Fernüberwachung
Westliches Ruhrgebiet

Berater und SW-Entwickler (m/w) für 3D-Erfassung/-Visualisierung/-Druck
Ulm

Entwicklungsingenieur (m/w) Auslegung / Versuch für Elektromotoren
Frankfurt





.
 
Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5

Listbox oder Textfeld in Dialogen automatisch füllen
09.03.2009, 16:03,
#1
DIAdem-Version: 11
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 2007
Brick  Listbox oder Textfeld in Dialogen automatisch füllen

Hallo Leute,


Wie kann ich über script die Eigenschaften (wie z.B. Beschreibung;Author;Datum usw.) von Gruppen aus dem Datenportal in eine Listbox oder Textfeld eines Dialoges überführen. Praktisch wie eine Vorauswahl der Parameter oder Informationen, welche schon die .tdms Datei mit sich bringen könnte (z.B. gefüttert von LabVIEW).

Gruß Matze

09.03.2009, 17:43,
#2
DIAdem-Version: 10.0
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: -
RE: Listbox oder Textfeld in Dialogen automatisch füllen

Hi Matze,
Ist der Befehl
Call ListBox.Items.Add()
nützlich?

Du kannst nämlich eine Schleife alle Eigenschaften in Listbox hinzufügen.
Dann mit
ListBox.Selection()
weiss du welche Eigenschaften gewünscht sind.

Können diese Befehle dir helfen? Oder habe ich falsch verstanden?

Gruß
JackieChen

09.03.2009, 18:21,
#3
DIAdem-Version: 11
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 2007
Brick  RE: Listbox oder Textfeld in Dialogen automatisch füllen

Hi Jackie,


Zunächst erstmal danke für die schnelle Antwort aber ich habe es noch nicht ganz kapiert hast Du mal ein Beispiel Code?

Gruß Matze

10.03.2009, 10:26,
#4
DIAdem-Version: 10.0
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: -
RE: Listbox oder Textfeld in Dialogen automatisch füllen

ich gehe davon aus, welche Eigenschaften in Listbox hinzuzufügen, sind bekannt, oder?
dann kannst du in Listbox Elemente einfügen:
Call ListBox.Items.Add("Name")
Call ListBox.Items.Add("Unit_String")
usw...
Beim Auswahl kannst du dann nämlich die Namen der Eigenschaften haben.
also mit ListBox.Selection.Text
z.B. a = ListBox.Selection.Text
dann suche wieder im Datenpotal mit
ChnPropGet("[1]/[1]", a)
(für verschiedene Gruppen musst du vielleicht noch erweitern)

ist es dir hilfsreich?^^

10.03.2009, 10:54,
#5
DIAdem-Version: 2011 und 2012 und auf alten CD's runter bis 3.0
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 1996
RE: Listbox oder Textfeld in Dialogen automatisch füllen

Hallo Matze,

wenn Du unter DIAdem 11 auf die Properties zugreifen möchtest, geht das (objektorientiert) so:

Code:
Dim i
for i =  1 to Data.Root.Properties.Count
  msgbox Data.Root.Properties(i).Value
next
bzw. Bei den Channel Groups entsprechend
Code:
msgbox Data.Root.ChannelGroups(1).Properties(1).Value

Und jetzt nur noch die Listbox füllen, wie JackieChen schon geschrieben hat...

Gruß
Bruno

DIAdem 2012
10.03.2009, 16:33, (Dieser Beitrag wurde zuletzt bearbeitet: 10.03.2009, 16:36 von Matze.)
#6
DIAdem-Version: 11
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 2007
Brick  RE: Listbox oder Textfeld in Dialogen automatisch füllen

Hallo Leute,

nach dem ich einiges versucht habe und dennoch nicht klar komme Angry mit den Eigenschaften hier jetzt der konkrete Dialog nebst Testdatei mit definierten Eigenschaften.

Wie bekomme ich die Daten aus den Gruppeneigenschaften in die EditBox2 des Dialogs und zwar abhängig davon welche Eigenschaft in der ComboBox2 gewünscht wird?

Und wie bekomme ich den Wert dann aus der EditBox2 in den Report?

Ihr seht Fragen über Fragen Huh



Angehängte Dateien
.sud   Messinfos.sud (Größe: 24,87 KB / Downloads: 281)
.tdm   Testdatei.TDM (Größe: 34,22 KB / Downloads: 385)
.tdx   Testdatei.tdx (Größe: 266,98 KB / Downloads: 272)
.asc   Deckblatt Messinfos.asc (Größe: 190 Bytes / Downloads: 296)
11.03.2009, 09:33,
#7
DIAdem-Version: 2011 und 2012 und auf alten CD's runter bis 3.0
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 1996
RE: Listbox oder Textfeld in Dialogen automatisch füllen

Hallo Matze,
ich werde nocht nicht ganz schlau, was Du willst Blush...

Code:
Sub ComboBox1_EventInitialize()
Dim This : Set This = ComboBox1

Dim i, Mattestest
For i =  1 To Data.Root.Properties.Count
  Mattestest=Data.Root.Properties(i).Value
  Call ComboBox1.Items.Add(Mattestest,i)
Next
End Sub
schreibt schon einmal alle Root properties in die ComboBox1.
In der Combobox2 ließt Du eine ASCII Datei ein. Sollte das nicht auch unter EventInitialize stehen?
Code:
Sub ComboBox2_EventInitialize()
Dim This : Set This = ComboBox2
    
Dim i, intMyHandle, strMyText, intMyError
  Call ComboBox2.Items.RemoveAll            
  i = 1
  intMyHandle = TextFileOpen("C:\DIAdem\Aut\Deckblatt Messinfos.asc",tfRead) ' open file
  Do While Not TextFileEOF(intMyHandle)     ' as long as file contains texts
    strMyText = TextFileReadLn(intMyHandle) ' read text from file
    Call ComboBox2.Items.Add(strMyText, i)  ' create another entry
       i = i + 1
  Loop
  intMyError = TextFileClose(intMyHandle)   ' close file
End Sub
Vielleicht kannst Du ja Dein Problem noch etwas spezifizieren...

Gruß
Bruno

DIAdem 2012
11.03.2009, 13:54,
#8
DIAdem-Version: 11
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 2007
Brick  RE: Listbox oder Textfeld in Dialogen automatisch füllen

Hallo Bruno,


hier eine etwas ausführlichere Darstellung meines Problems:

Ich möchte in den ComboBoxen 2-9 die Namen der Eigenschaften auswählen können und zwar abhängig von der Gruppe (im Dialog noch nicht vorgesehen). Also würde z.B. Pumpentyp (Eigenschaft aus der Gruppe1) in der ComboBox stehen.
Ich kann ja in das Datenprotal mehrere TDM- Dateien lasen welche dann ja eine Gruppe darstellen mit den entsprechenden Eigenschaften.
In Gruppe 2 könten z.B. ganz andere Eigenschaften vorgegeben sein die ich mit dem selben Dialog auslesen möchte.

So sobald ich nun die Auswahl Pumpentyp in der Combox getroffen habe möchte ich dann den dazugehörigen Wert, also in diesem Fall SP630 in die danebenstehende EditBox zugeweisen bekommen.

Was wie bereits erwähnt noch fehlt ist die Auswahl der Gruppe. D.h. von welcher Gruppe möchte ich jetzt die Eigenschaften auswählen und auslesen.Blush

11.03.2009, 14:25,
#9
DIAdem-Version: 2011 und 2012 und auf alten CD's runter bis 3.0
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 1996
RE: Listbox oder Textfeld in Dialogen automatisch füllen

Hi Matze,

jetzt komme ich der ganzen Sache schon näher...
Versuche einmal als ComboBox2 EventInitialize

Code:
Sub ComboBox2_EventInitialize()
Dim This : Set This = ComboBox2
Dim i, Mattestest

For i =  1 To Data.Root.Properties.Count
  Mattestest=Data.Root.Properties(i).Name
  Call This.Items.Add(Mattestest,i)
Next
End Sub
(liest jetzt ersteinmal alle Root Props)
und als EventChange
Code:
Sub ComboBox2_EventChange()
Dim This : Set This = ComboBox2
    EditBox2.Text = Data.Root.Properties(This.Value).Value
End Sub

Geht das in die Richtung? Jetzt müssten wir noch die einzelnen Gruppen einlesen. Soll jede ComboBox eine Gruppe repräsentieren? Oder was soll die Gruppenauswahl?

Gruß
Bruno

DIAdem 2012
11.03.2009, 16:31,
#10
DIAdem-Version: 11
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 2007
RE: Listbox oder Textfeld in Dialogen automatisch füllen

Hallo Bruno,


ja das sieht gut aus, genauso sollte es gehen. Jetzt müssten nur noch die Gruppen auswählbar sein.

Die Gruppenauswahl sollte über eine Listbox erfolgen, in der alle im Datenprotal vorhandenen Gruppen aufgeführt sind. Nach dem diese Auswahl erfolgt ist, sollen über die ComboBoxen nur die Eigenschaften zu der ausgewählten Gruppe auswählbar sein. Dann wird die EditBox gefüllt und die Werte aus der ComboBox und Editbox auf ein Reportblatt übertragen, quasi als information zum Versuchsträger usw.

Gruß Matze



Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Bufferüberlauf nur bei automatisch gestarteter Messung mittels Script Rookie86 0 2.921 21.05.2014, 10:34
Letzter Beitrag: Rookie86
  [ERLEDIGT] Listbox Inhalt überprüfen AndiMEC 1 3.758 09.05.2014, 08:49
Letzter Beitrag: grisu
  Ordnerinhalt in Listbox/ combobox schmik 7 11.877 25.12.2013, 14:03
Letzter Beitrag: MichiR
  skripte automatisch ablaufen lassen bamboocopter 3 6.363 02.08.2013, 10:10
Letzter Beitrag: Slide
  Button drücken = "Visual" automatisch in Vollbildmodus .DAC-Datei öffnen Slide 0 3.256 08.05.2013, 14:01
Letzter Beitrag: Slide
  Dialog im Vorfeld füllen Trucker_Joe 2 4.462 06.06.2012, 08:20
Letzter Beitrag: MBT
  Gruppen automatisch speichern stm83 9 8.126 16.05.2012, 14:57
Letzter Beitrag: stm83
  Messungen automatisch zusammensetzten. Patrick 1 3.674 07.10.2011, 12:22
Letzter Beitrag: voyager
  mehre Dateien automatisch öffnen labu 3 5.119 15.06.2011, 15:40
Letzter Beitrag: STG
  Variableninhalte mit Dialogen austauschen nitni 3 5.044 19.04.2011, 09:39
Letzter Beitrag: Jasper

Gehe zu: