Liebe Gäste des Forums
Danke, dass ihr euch hier auf dem inoffiziellen Windev-Forum umschaut. Hier werden Tipps und Hinweise zu der von PC-Soft angebotenen Software Windev besprochen.
Windev ist eine leistungsstarke, sehr umfangreiche Entwicklersoftware für Webseiten, Handys und Rechner verschiedener Betriebssysteme. Mehr unter http://www.windev.com

2 dimensionale Arrays

Alle Themen rund um die Erstellung von Programmen
Antworten
satmax
Member
Beiträge: 184
Registriert: 24. September 2015, 10:05
Wohnort: Biberbach, Austria
Kontaktdaten:

2 dimensionale Arrays

Beitrag von satmax » 22. August 2016, 13:16

Ich komme mit den Arrays nicht klar, Habe aus der Hilfe folgenden Beispielcode kopiert:

Code: Alles auswählen

/ Declare an Array of arrays
arrMyArray is array of strings
nArrIndex is int

nArrIndex = Add(arrMyArray)
Add(arrMyArray[nArrIndex], "January")
Add(arrMyArray[nArrIndex], "300")
nArrIndex = Add(arrMyArray)
Add(arrMyArray[nArrIndex], "February")
Add(arrMyArray[nArrIndex], "600")

Trace(arrMyArray[1,1]) // Displays "January"
Trace(arrMyArray[1,2]) // Displays "300"
Bekomme aber in den folgenden beiden Zeilen

Code: Alles auswählen

Trace(arrMyArray[1,1]) // Displays "January"
Trace(arrMyArray[1,2]) // Displays "300"
den Fehler:
Error:Array with 1 dimension(s): unable to access it with 2 dimension(s).

Wie ist das möglich?

Herbert
Site Admin
Beiträge: 372
Registriert: 23. Februar 2010, 08:06
Wohnort: Langenthal, Schweiz
Kontaktdaten:

Re: 2 dimensionale Arrays

Beitrag von Herbert » 23. August 2016, 16:34

...weil du nur einen eindimensionalen Array definiert hast.

Einfache Definition

Code: Alles auswählen

arrNItems is array of 2 by 2 int
Du kannst das auch später definieren

Code: Alles auswählen

arrNitems is dynamic array
...
arrNItems = new array of 4 by 7 int
P.S. Falls du arraymässig arbeiten wisst, aber verschiedene Datentypen darin verwenden willst, geht das mitr der Structure.

Code: Alles auswählen

MasterDataCount	is Structure
	sType	is string
	nID		is int
	nCnt		is int
	rSum		is real
END
...
arrMasterDataCount		is array of MasterDataCount
...
struMasterDataCount is MasterDataCount
...
struMasterDataCount.sType = "10_Text"
struMasterDataCount.nID = QRY_Multiselektion.FilialeID
ArrayAdd(arrMasterDataCount, struMasterDataCount)


satmax
Member
Beiträge: 184
Registriert: 24. September 2015, 10:05
Wohnort: Biberbach, Austria
Kontaktdaten:

Re: 2 dimensionale Arrays

Beitrag von satmax » 29. August 2016, 20:21

wenn auch spät, herzlichen Dank. :)

Adrian
Junior Member
Beiträge: 7
Registriert: 11. September 2010, 10:10
Kontaktdaten:

Re: 2 dimensionale Arrays

Beitrag von Adrian » 25. April 2018, 15:19

Hallo zusammen

Ich habe diese Lösung wie oben mit der Struktur umgesetzt (als Combox mit Variablen) klappt soweit alles wunderbar.

Nun möchte ich jedoch beim noch auf das Array zugreifen können.

Im Debugger, absolut kein Problem, klappt wunderbar.

Im Editor kommt jedoch eine Fehlermeldung.

hat da jemand eine glorreiche Idee, oder wie ich das Problem einkreisen kann?
Unbenannt.JPG
Unbenannt.JPG (112.07 KiB) 320 mal betrachtet

Adrian
Junior Member
Beiträge: 7
Registriert: 11. September 2010, 10:10
Kontaktdaten:

Re: 2 dimensionale Arrays

Beitrag von Adrian » 25. April 2018, 19:17

Nachtrag: Hier ein Bild, damit Ihr seht das die Variable auch ein Wert zurückgibt

Doch trotzdem ist der Ausdruck rot, zeigt einen Fehler an
Unbenannt.JPG
Unbenannt.JPG (14.98 KiB) 318 mal betrachtet

es Grüessli

Adrian

Herbert
Site Admin
Beiträge: 372
Registriert: 23. Februar 2010, 08:06
Wohnort: Langenthal, Schweiz
Kontaktdaten:

Re: 2 dimensionale Arrays

Beitrag von Herbert » 26. April 2018, 12:32

Hallo Adrian
Der rote Text bezieht sich auf die [3], nicht auf die [2] oder [1]

Zudem scheint mir dein Weg, zu einer Anrede zu kommen, hier doch recht schwerfällig.

Adrian
Junior Member
Beiträge: 7
Registriert: 11. September 2010, 10:10
Kontaktdaten:

Re: 2 dimensionale Arrays

Beitrag von Adrian » 28. April 2018, 07:26

Hoi Herbert

Die Variable hat von 1-9 einen Wert, doch ich habe dies nun etwas anders gelöst.

In meiner Datenbank habe ich ein Feld von 0-9 mit der Textanrede (dies ist in der bisherigen xBase Version so, und ich übernehme die Daten und baue nicht ganz alles um)

Nun möchte ich eine Listbox welche mir die Textanreden darstellt und bei der Auswahl die entsprechende Nummer direkt in die Datenbank schreibt.

Dies klappt nun mit dieser Lösung wunderbar.
Unbenannt2.JPG
Unbenannt2.JPG (23.2 KiB) 294 mal betrachtet
Unbenannt.JPG
Unbenannt.JPG (34.86 KiB) 294 mal betrachtet
Adrian

Antworten