Benutzername:  
Passwort:     



Antwort schreiben  Thema schreiben 
Visual Basic .net Auslosung ohne Doppelte Gegner
nacramell
Junior Member
*



Beiträge: 37
Registriert seit: Mar 2008
Gender: Male
Location: Gernsbach
Bewertung: 0

Beitrag: #1
Visual Basic .net Auslosung ohne Doppelte Gegner - Posted At: 16.06.2008 07:19 PM

Hallo erst mal
ich hät da mal gern ein Problem

da ist so ein Code der will net so wie ich will
Erst mal die Erklärung was er Tuhen soll

Also ich schreib an einem Boule Programm (Boule ist ein Spiel mit Kugeln die man an eine Bestimmte (kleinere) Kugel so nah wie möglich legen muss) so dieses Programm soll nun Auslosen wer gegen wen Spielt.

und da ist ein problem das erste habe ich wol gelöst mit diesem Code (er soll verhindern das die Gleichern Manschaften nochmal gegen einander SPielen)

Code:
For i = 1 To AnzManschaften
            Do
                Randomize()
                Dim Gegner1 As String
                Dim b As Integer
                b = AnzManschaften + 1
                Gegner1 = oZahl.Next(1, b) ' Zufällige zahl von 1 und Anzahl der Manschaften !
                If Not oList.ContainsValue(Gegner1) Then
                    oList.Add(Gegner1, Gegner1)
                    Gegner(i) = Gegner1
                    Exit Do
                End If
            Loop
        Next

Das funktioniert ohne Probleme (vll gibt es eine Bessere Lösung aber egal) das ist nicht das Poblem ^^

das problem liegt hier
Ich habe ein Array das beim Start des Programmes den Wert Anzahl der Manschaften bekommt also wenn es 4 Manschaften sind ist das Array
dim AnzManschaften(4) as integer
und jetzt hab ich 30 Textboxen in die Später die Manschafts Nummern Rein kommen d.h. 1-4.
Um nicht später das problem mit FAlscher Index des Arrays oder so zu begegnen schreib ich am Anfang in jedes Array dingens (kann mir mal einer sagen wie das heist !!)
"0" rein
heist

Code:
For i = 1 To 30
        Gegner(i) = 0
        Next

so jetzt schreib ich in die Textboxen folgendes rein

Code:
TextBox1.Text = Gegner(1)
        TextBox2.Text = Gegner(2)
        TextBox3.Text = Gegner(3)
        TextBox4.Text = Gegner(4)
        TextBox5.Text = Gegner(5)
        TextBox6.Text = Gegner(6)
        TextBox7.Text = Gegner(7)
        TextBox8.Text = Gegner(8)
        TextBox9.Text = Gegner(9)
        TextBox10.Text = Gegner(10)
        TextBox11.Text = Gegner(11)
        TextBox12.Text = Gegner(12)
        TextBox13.Text = Gegner(13)
        TextBox14.Text = Gegner(14)
        TextBox15.Text = Gegner(15)
        TextBox16.Text = Gegner(16)
        TextBox17.Text = Gegner(17)
        TextBox18.Text = Gegner(18)
        TextBox19.Text = Gegner(19)
        TextBox20.Text = Gegner(20)
        TextBox21.Text = Gegner(21)
        TextBox22.Text = Gegner(22)
        TextBox23.Text = Gegner(23)
        TextBox24.Text = Gegner(24)
        TextBox25.Text = Gegner(25)
        TextBox26.Text = Gegner(26)
        TextBox27.Text = Gegner(27)
        TextBox28.Text = Gegner(28)
        TextBox29.Text = Gegner(29)
        TextBox30.Text = Gegner(30)

Sollte klar sein das das Die Nummern der Gegner sind die Ausgelost worden sind
nur hab ich jetzt in den Textboxen die nicht benutzt werden
in unserem Fall werden Plos textbox1-4 benutzt- "0" Drinn stehen das ist halt ein Schönheits Fehler den ich gerne NICHT hätte !!

Freu mich wenn ihr Antwortet Bitte wär echt super wenn es nicht mehr wär Problem
EINEM INTEGER KANN MAN NICHT KEINEN INHALT ZUWEISEN (oder ??)
sonst wär das kein Problem ^^XD


Wenn NULL besonders groß ist, ist es fast schon wie ein bißchen eins.

Die drei Feinde des Programmierers: Sonne, Frischluft und dieses schreckliche Gebrüll der Vögel.

Spielt man die CD vorwärts so sieht man den Bluescreen. Viel schlimmer: Spielt man sie rückwärts, installiert sie Windows 98.
Offline   Diesen Beitrag einem Moderator melden  
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
N43
Administrator
*******



Beiträge: 237
Registriert seit: Jan 2004
Gender: Male
Location: Stuttgart
Bewertung: 0

Beitrag: #2
RE: Visual Basic .net Auslosung ohne Doppelte Gegner - Posted At: 17.06.2008 08:42 PM

Abend,

du könntest ja eine if-Abfrage einbauen, die in TextBox i "nicht belegt" reinschreibt, wenn Gegner(i) = 0 ist.


N43


www.programmers-corner.de

Debuggers don't remove Bugs, they only show them in Slow-Motion.
Offline   Diesen Beitrag einem Moderator melden  
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
nacramell
Junior Member
*



Beiträge: 37
Registriert seit: Mar 2008
Gender: Male
Location: Gernsbach
Bewertung: 0

Beitrag: #3
RE: Visual Basic .net Auslosung ohne Doppelte Gegner - Posted At: 18.06.2008 12:00 PM

Das mit Textboxi.text (fals du das so änlich gemeint hast) funktioniert net

Also

Code:
dim i as integer
dim Gegner(200) as integer

for i = 1 to 200
    if Gegner(i) = 0 then
        Textboxi.text (oder Textbox(i).text oder was auch immer) gibt Fehler
    end if
Next


Wenn NULL besonders groß ist, ist es fast schon wie ein bißchen eins.

Die drei Feinde des Programmierers: Sonne, Frischluft und dieses schreckliche Gebrüll der Vögel.

Spielt man die CD vorwärts so sieht man den Bluescreen. Viel schlimmer: Spielt man sie rückwärts, installiert sie Windows 98.
Offline   Diesen Beitrag einem Moderator melden  
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
nacramell
Junior Member
*



Beiträge: 37
Registriert seit: Mar 2008
Gender: Male
Location: Gernsbach
Bewertung: 0

Beitrag: #4
RE: Visual Basic .net Auslosung ohne Doppelte Gegner - Posted At: 18.06.2008 12:37 PM

Gibts vll eine andere Art der auslosung ?? bei der so ein Fehler behoben wird ?


Wenn NULL besonders groß ist, ist es fast schon wie ein bißchen eins.

Die drei Feinde des Programmierers: Sonne, Frischluft und dieses schreckliche Gebrüll der Vögel.

Spielt man die CD vorwärts so sieht man den Bluescreen. Viel schlimmer: Spielt man sie rückwärts, installiert sie Windows 98.
Offline   Diesen Beitrag einem Moderator melden  
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
N43
Administrator
*******



Beiträge: 237
Registriert seit: Jan 2004
Gender: Male
Location: Stuttgart
Bewertung: 0

Beitrag: #5
RE: Visual Basic .net Auslosung ohne Doppelte Gegner - Posted At: 21.06.2008 10:58 AM

Wenn du die Textboxen als Array willst, musste sie dynamisch erzeugen, also erst zur Laufzeit anlegen.

So haste das Problem, dass du die TextBox direkt ansprechen musst. Also für jeden Index eine extra if Abfrage.

Code VB :
   
if Gegner(1) = 0 then
   Textbox1.text = "kein Wert"
end if
if Gegner(2) = 0 then
   Textbox2.text = "kein Wert"
end if
if Gegner(3) = 0 then
   Textbox3.text = "kein Wert"
end if
 
' usw


N43


www.programmers-corner.de

Debuggers don't remove Bugs, they only show them in Slow-Motion.

Dieser Beitrag wurde zuletzt bearbeitet: 21.06.2008 10:58 AM von N43.

Offline   Diesen Beitrag einem Moderator melden  
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
crunchyrocks
Junior Member
*



Beiträge: 3
Registriert seit: Dec 2008
Gender:
Location:
Bewertung: 0

Beitrag: #6
RE: Visual Basic .net Auslosung ohne Doppelte Gegner - Posted At: 10.12.2008 09:35 AM

Um zu erfahren, wie das Problem, die Sie benötigen TextBox direkt. Also für jeden Index, wenn eine zusätzliche Abfrage. Sollte klar sein, dass die Zahlen gezogen werden Gegner wurden gut zu beheben kann.


Sie genussvolle Momente im Leben
Offline   Diesen Beitrag einem Moderator melden  
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Antwort schreiben  Thema schreiben 

[-]
Schnellantwort
Nachricht
Gib hier deine Antwort zum Beitrag ein.





Druckversion anzeigen
Thema einem Freund senden
Thema abonnieren | Thema zu den Favoriten hinzufügen

Gehe zu Forum: