Datenfelder
Moderatoren: crack, Krüsty, Marwin
Hallo,
Ich beschäftige mich schon seit einiger Zeit mit QBasic, habe aber noch nie ein Datenfeld benutzt. Jetzt brauche ich ein drei-dimensionales und ein zwei-dimensionales Datenfeld zum Speichern von einer Bildnummer und zwei dazugehörige Daten (z.B. Höhe, Breite). Könntet ihr mir vielleicht helfen?
AW DW
Ich beschäftige mich schon seit einiger Zeit mit QBasic, habe aber noch nie ein Datenfeld benutzt. Jetzt brauche ich ein drei-dimensionales und ein zwei-dimensionales Datenfeld zum Speichern von einer Bildnummer und zwei dazugehörige Daten (z.B. Höhe, Breite). Könntet ihr mir vielleicht helfen?
AW DW
Wer viel weiß macht viele Fehler. Ich mache nie Fehler.
- Marwin
- Moderator
- Beiträge: 307
- Registriert: Donnerstag 8. Mai 2003, 21:19
- Wohnort: Seelow, Deutschland
- Kontaktdaten:
Hi DWinky,
Wenn die Bildnummern fortlaufend sind, dann könnte das hier reichen:
Bilder(id, 0) enthält die Breite des Bildes,
Bilder(id, 1) enthält die Höhe des Bildes,
id ist die Bildnummer und
maxId ist die höchste Bildnummer.
Sollten die Bildnummern nicht durchgängig sein, dann musst du oben nur etwas verändern:
Hier ist
Bilder(n, 0) die Bildnummer,
Bilder(n, 1) die Breite des Bildes und
Bilder(n, 2)die Höhe des Bildes.
anzahlBilder steht selbstredend für die Anzahl der Bilder, deren Daten du im Datenfeld speichern möchtest.
n ist irgend eine Zahl von 0 bis anzahlBilder.
Ich hoffe das ist das wonach du gefragt hast?
Marwin
Wenn die Bildnummern fortlaufend sind, dann könnte das hier reichen:
Code: Alles auswählen
DIM Bilder(maxId, 1) AS INTEGER
Bilder(0, 0) = 100
Bilder(0, 1) = 70
Bilder(1, 0) = 100
Bilder(1, 1) = 70
Bilder(id, 1) enthält die Höhe des Bildes,
id ist die Bildnummer und
maxId ist die höchste Bildnummer.
Sollten die Bildnummern nicht durchgängig sein, dann musst du oben nur etwas verändern:
Code: Alles auswählen
Bilder(anzahlBilder, 2) AS INTEGER
Bilder(0, 0) = 1
Bilder(0, 1) = 100
Bilder(0, 2) = 70
Bilder(1, 0) = 2
Bilder(1, 1) = 100
Bilder(1, 2) = 70
Bilder(n, 0) die Bildnummer,
Bilder(n, 1) die Breite des Bildes und
Bilder(n, 2)die Höhe des Bildes.
anzahlBilder steht selbstredend für die Anzahl der Bilder, deren Daten du im Datenfeld speichern möchtest.
n ist irgend eine Zahl von 0 bis anzahlBilder.
Ich hoffe das ist das wonach du gefragt hast?
Danke, aber nun habe ich ein weiteres Problem, ich habe jetzt ein Datenfeld
Feld (X,Y) Wobei X und Y in einem Unterprogramm festgelegt wird, das sieht ungefähr so aus:
[span style=font-family:Arial][span style=font-size:8pt;line-height:100%]for FeldX=30 To 390 step 20
for FeldY=30 to 390 step 20
X=(FeldX-10)/20
Y=(FeldY-10)/20
Wert =int(rnd*2)+1
Feld(X,Y)=Wert
next
next[/span][/span]
Nun kann ich den Wert des Feldes Feld(2,2) oder Feld(3,5) auslesen,
aber ich würde gerne auch die Werte X und Y bei einem anderen Unterprogramm wieder aus dem Datenfeld herauslesen (sofern es geht).
Feld (X,Y) Wobei X und Y in einem Unterprogramm festgelegt wird, das sieht ungefähr so aus:
[span style=font-family:Arial][span style=font-size:8pt;line-height:100%]for FeldX=30 To 390 step 20
for FeldY=30 to 390 step 20
X=(FeldX-10)/20
Y=(FeldY-10)/20
Wert =int(rnd*2)+1
Feld(X,Y)=Wert
next
next[/span][/span]
Nun kann ich den Wert des Feldes Feld(2,2) oder Feld(3,5) auslesen,
aber ich würde gerne auch die Werte X und Y bei einem anderen Unterprogramm wieder aus dem Datenfeld herauslesen (sofern es geht).
Wer viel weiß macht viele Fehler. Ich mache nie Fehler.
Hi!
Because of my bad German I dont understand your problem very good,
but why do you use such "difficult" structure like
I advice use to use "TYPE" :
With this structure you will forget a lot of problem!
I think its more usefull und "naturally"...
Because of my bad German I dont understand your problem very good,
but why do you use such "difficult" structure like
Code: Alles auswählen
DIM Bilder(maxId, 1) AS INTEGER
Code: Alles auswählen
TYPE Bild
Breite AS INTEGER
Hohe AS INTEGER
END TYPE
DIM Bilder(1 to MaxID) AS Bild
I think its more usefull und "naturally"...
If the ship don't know where to go - it has no fair wind...
Thanks for answer,
I’ve never worked with “TYPE”, and so I don’t know
weather I can make that ,in your example Bilder, is 1 or 2
(I’m sorry for my bad English.)
I’ll make a field with 20*20 Fields, and every Field has another value.
I’ll get the position of an Field, that I can paint in the Field if the Mouse over it.
I hope you understand my problem better now.
I’ve never worked with “TYPE”, and so I don’t know
weather I can make that ,in your example Bilder, is 1 or 2
(I’m sorry for my bad English.)
I’ll make a field with 20*20 Fields, and every Field has another value.
I’ll get the position of an Field, that I can paint in the Field if the Mouse over it.
I hope you understand my problem better now.
Wer viel weiß macht viele Fehler. Ich mache nie Fehler.