Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Zusammengesetzte Variable unter VB.net

Empfohlene Antworten

Veröffentlicht

Ich habe eine Tabelle, welcher ich pro Feld einen Zufallswert zwischen 1 und 6 zuweisen will.

Damit das recht flott geht, wollte ich mit zwei schleifen einmal die spalten und dann die Zeilen zuweisen lassen:


x=1

y=1

Do While(x<=6)

   Do While(y<=6)

      "Variable & x & y" = Math.Round(Rnd()*6,0)

      y=y+1   

   Loop

x=x+1

Loop

Das Problem ist, das er den "Variable & x & y" part als Fehler markiert und ich auch nicht genau weiss, wie ich das für das System verständlich eingeben soll.

Die zustandekommenden Variablen sind alle definiert als int16. Ich hoffe ich hab nix vergessen :hells:

Danke im Vorraus.

Sehe ich das richtig das du von der System.Data.DataTable sprichst?

denn solltest du direkt auf der Tabelle arbeiten.

Also auf vorhandene Variablen-Namen die du in im QuellCode definierst kannst du meines Wissens nicht dynamisch drauf zugreifen.

Du solltest entweder ein Array nehmen, oder die Werte direkt in deine Tabelle schreiben.

Dein Umweg hört sich ein wenig merkwürdig an.

der umweg kann auch gar nicht funktionieren. ;)

du hasst 3 int16 variablen, die du mit dem &-operator verknüpfen willst. nun dieser operator ist für strings vorgesehen.

außerdem willst du deine zählervariablen für ne zuweisung verwenden.

desweiteren verstehe ich die ganze zuweisung nicht. eventuell meinst du ja folgendes:



' Code um 6 Zufallszahlen in einer Reihe in eine Stringvariable zu schreiben

y=1

   Do While(y<=6)

      intZahl = Math.Round(Rnd()*6,0)

      strAusgabe += CStr(intZahl)

      y += 1   

   Loop


Wenn du jetzt auch noch 6 Zeilen haben willst, muss du entweder für jede Zeile einen String füllen, die unterschiedliche namen haben müssen, oder du nimmst Arrays was spätestens ab jetzt sinnvoll ist.

MfG

  • Autor
Also auf vorhandene Variablen-Namen die du in im QuellCode definierst kannst du meines Wissens nicht dynamisch drauf zugreifen.

Du solltest entweder ein Array nehmen, oder die Werte direkt in deine Tabelle schreiben.

Dein Umweg hört sich ein wenig merkwürdig an.

So, jetzt hab ich also mein Array erzeugt und auch befüllt. Kann ich die Werte des Arrays auch an Textboxen übergeben? Möglichst auch mit Schleife. Also das Funktioniert zumindest teilweise( es wird das komplette Array in die txt11 überschreibend eingetragen; der Letzte Wert bleibt dann bestehen):


x = 0

y = 0

Do While x <= 5

 Do While y <= 5

  txt11.Text = Array.GetValue(x,y)

  y+=1

 Loop

 x+=1

Loop

nur sowas(oder Ähnlich) sollte dabei rauskommen:

x = 0

y = 0

[B]m[/B] = 1

[B]n[/B] = 1

Do While x <= 5

 Do While y <= 5

  txt[B]mn[/B].Text = Array.GetValue(x,y)

  y += 1

  [B]n[/B] += 1

 Loop

 x += 1

 [B]m[/B] += 1

Loop

Mit dem Array wurde denke ich das Problem zwar erstmal umgangen, aber am Ende bei der Ausgabe bleibt es doch bestehen. Die VB.Net IDE akzeptiert den Code nämlich so nicht. Durch die funktionalität des Programms müssen die Felder nachher Textboxen bleiben. Mein VB.Net-Buch hilft mir da leider auch nicht weiter und für googeln ist das Problem denke ich zu Komplex...


TextBox1.Text = TextBox1.Text & "," & Array.GetValue(x,y)

das egibt ne liste mit den werten im array.

MfG

Fasse ich mal zusammen, du hast ein Formular mit X Feldern (TextBoxen) diese sollen dynmisch aus einem Array mit Daten Gefüllt werden. Ist das soweit richtig?

Denn solltest du auf dein Form ein Panel setzen, und in das Panel dann die TextBoxen dynamisch in deiner Schleife erstellen.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.