Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten
Autor
Nachricht
davidb_
Newbie
Newbie

Anmeldedatum: 24.09.2007
Beiträge: 2

Rechentrainer[brauch hilfe]
Verfasst am: 27.09.2007, 18:34

Hallo zusammen,

Ich hab ja erst vor kurzen angefangen zu Programmiern
(das ist jetzt mein drittes Projekt^^)

Ich habe folgende Aufgabenstellung erhalten:
Ich soll ein Proggramm schreiben:,
-welches in 2 Textfelder zufällig Zahlen erstellt
-Der benutzer die richtige antwort in ein Drittes feld schreibt
-Das Programm die Antwort prüft

Ich bin soweit:
-Man wählt über einen Knopf die Rechenart aus
-dann werden zahlen in 2 felder eingefügt

Mein problem:
Ich habe nun auch schon einen Button mit dem man prüfen kann ob das ergebnis bei der addition richtig wäre..
aber wie schaffe ich das ich die überprufung aller rechenarten in einem Knopf mache?

Das müsste ich ja Theoretisch schon zuweisen,wenn ich die rechenart auswähle,oder?
aber wie genau geht das dann?



Quellcode is lang,deswegen in einer .rtf....
http://www.xbox-front-fighters.de/Webspell/demos/ini/davidb/VB.rtf


Danke jetz schon für eure Hilfe


EDIT:
Eine Lösung ist mir jetzt schon eingefallen..
Einfach 4 Prüfen Buttons machen, je nach ausgewählter rechenart,den entsprechenden Button anzeigen lassen..
Ist nur nicht sonderlich elegant^^
gehts auch anders?^^
 
regenwurm_
Coder
Coder

Anmeldedatum: 20.07.2007
Beiträge: 85


Verfasst am: 27.09.2007, 18:46

Du könntest auch Timer machen, die Zeiten kann der user ja per TextBox eingeben

Ich post dir gleich die source.. ^^[/vb]
 
regenwurm_
Coder
Coder

Anmeldedatum: 20.07.2007
Beiträge: 85


Verfasst am: 27.09.2007, 19:00

Kp ob es funktioniert ^^


[vb:1:7d552e288d]Private Declare Sub Sleep Lib "kernel32" (ByVal lngMilliseconds As Long)

Private Function GetRandomNum(Min As Long, Max As Long) As Long
GetRandomNum = Int(Rnd * (Max - Min + 1) + Min)
End Function

Private Sub Command1_Click()

Text1.Text = (GetRandomNum(7, 22))

End Sub

Private Sub cmd_add_Click()

Text1.Text = (GetRandomNum(7, 22))
Text2.Text = (GetRandomNum(7, 22))
Label1.Caption = "+"
tim_add.Enabled = True

End Sub

Private Sub cmd_divi_Click()

Text1.Text = (GetRandomNum(7, 22))
Text2.Text = (GetRandomNum(7, 22))
Label1.Caption = ":"
tim_div.Enabled = True

End Sub

Private Sub cmd_minus_Click()

Text1.Text = (GetRandomNum(7, 22))
Text2.Text = (GetRandomNum(7, 22))
Label1.Caption = "-"
tim_sub.Enabled = True

End Sub

Private Sub cmd_multi_Click()

Text1.Text = (GetRandomNum(7, 22))
Text2.Text = (GetRandomNum(7, 22))
Label1.Caption = "*"
tim_multi.Enabled = True

End Sub





Private Sub Text4_Click()

MsgBox "Bitte geben sie millisekunden ein!"

End Sub

Private Sub tim_add_Timer()

Dim zeit As String

Sleep Text4.Text

If Val(Text1.Text) + Val(Text2.Text) = Text3.Text Then
MsgBox "Ergebnis richtig! - Bravo!!!"
Else
MsgBox "Ergebnis leider falsch"
End If

tim_add.Enabled = False

End Sub

Private Sub tim_div_Timer()

Sleep Text4.Text

If Text1.Text / Text2.Text = Text3.Text Then
MsgBox "Ergebnis richtig! - Bravo!!!"
Else
MsgBox "Ergebnis leider falsch"
End If

tim_div.Enabled = False

End Sub

Private Sub tim_multi_Timer()

Dim zeit As String

Sleep Text4.Text

If Text1.Text * Text2.Text = Text3.Text Then
MsgBox "Ergebnis richtig! - Bravo!!!"
Else
MsgBox "Ergebnis leider falsch"
End If

tim_multi.Enabled = False

End Sub

Private Sub tim_sub_Timer()

Dim zeit As String

Sleep Text4.Text

If Text1.Text - Text2.Text = Text3.Text Then
MsgBox "Ergebnis richtig! - Bravo!!!"
Else
MsgBox "Ergebnis leider falsch"
End If

tim_sub.Enabled = False

End Sub
[/vb:1:7d552e288d]


Meine GUI sieht so aus:




@Mods.. sorry für Doppelpost :S
 
davidb_
Newbie
Newbie

Anmeldedatum: 24.09.2007
Beiträge: 2


Verfasst am: 27.09.2007, 19:13

@regenwurm
danke schon mal,echt nett von dir,
ich probier es dann gleich mal aus^^

@all andre
bin für andere lösungsvrschkäge immer noch gerne offen (will ja was lernen^^)

Und ich habe noch ein problem:
So wird derzeit meine zufällige zahl ermittelt:
zB
[vb:1:2bb27372a4]txt_zahl1.Text = Int(Rnd * 100)[/vb:1:2bb27372a4]
Da besteht folgendes problem,es kommen immer die selben zahlen beim programm start,in einer festen reihenfolge Sad
gibts einen anderen befehl?^^
 
regenwurm_
Coder
Coder

Anmeldedatum: 20.07.2007
Beiträge: 85


Verfasst am: 27.09.2007, 19:54

GetRandomNum = Int(Rnd * (Max - Min + 1) + Min)
damit wird die GetRandomNum immer gemischt.

Danach GetRandomNum(x, y)
x =kleinste zahl y= grösste zahl (glaube ich ^^)
 
The-God-of-all_
Poster
Poster

Anmeldedatum: 20.05.2007
Beiträge: 170
Wohnort: App.Path


Verfasst am: 28.09.2007, 13:14


davidb hat Folgendes geschrieben:
Da besteht folgendes problem,es kommen immer die selben zahlen beim programm start,in einer festen reihenfolge Sad
gibts einen anderen befehl?^^


Das ist immer dann wenn du nur rnd nimmst und nicht erst Randomize aufrufst. Du solltest immer das erste mal bevor du rnd aufrufst Randomize aufrufen, das liegt daran dass der Computer eigentlich keine Zufallszahlen Berechnen kann sondern diese aus irgendwelchen Zahlen berechnet. Wenn du nicht vorher Randomize aufrufst dann nimmt er immer die gleichen (sie ändern sich bei jedem Aufruf der Funktion, werden aber immer in der gleichen Reihenfolge verwendet und die fängt bei Programmstart immer wieder von vorne an). Mit der Funktion Randomize kannst du eine Zahl festlegen. Dieser Parameter ist aber Optional, wenn du ihn weg lässt dann benutzt der Computer Automatisch die System zeit.
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten

Tags: brauch

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Button/Text 958 18.06.2009, 16:21
Keine neuen Beiträge E-Mail bekomm nach Button klicken 713 02.10.2007, 17:45
Keine neuen Beiträge Bestimmten "Button" auf Website klicken 1684 14.09.2007, 21:27
Keine neuen Beiträge webbrowser/ webformular button klicken 1611 23.07.2007, 23:07
Keine neuen Beiträge Button drücken.. 842 01.07.2007, 13:19
 


[ Time: 0.0648s ][ Queries: 95 (0.0221s) ][ GZIP on - Debug on ]