Hallo,
dies ist mein erstes funktionierendes Projekt, was allerdings noch arg verbesserungswürdig ist.
Man muß ein Getränk plus größe auswhlen. Dannach auf OK klicken Geld einwerfen und dann Bezahlen klicken.
Kann man dies in einer Prozedur machen? z.B. das man nur bezahlen klickt, der Betrag angezeigt wird, danach anhalten geld einwerfen und dann bekommt man das Rückgeld oder muß nachwerfen?
Hier mein Code:
Private Sub Cmd_okClick(sender As System.Object, e As System.EventArgs)
Dim strbetrag As decimal
If rdb_kaffee.Checked = True And rdb_klein.Checked = True Then
strbetrag = 1
ElseIf rdb_kaffee.Checked = True And rdb_mittel.Checked = True Then
strbetrag = 2
ElseIf rdb_kaffee.Checked = True And rdb_gross.Checked = True Then
strbetrag = 3
ElseIf rdb_kaffee.Checked = True And rdb_maxi.Checked = True Then
strbetrag = 4
ElseIf rdb_kakao.Checked = True And rdb_klein.Checked = True Then
strbetrag = 1
ElseIf rdb_kakao.Checked = True And rdb_mittel.Checked = True Then
strbetrag = 2
ElseIf rdb_kakao.Checked = True And rdb_gross.Checked = True Then
strbetrag = 3
ElseIf rdb_kakao.Checked = True And rdb_maxi.Checked = True Then
strbetrag = 4
ElseIf rdb_tee.Checked = True And rdb_klein.Checked = True Then
strbetrag = 1
ElseIf rdb_tee.Checked = True And rdb_mittel.Checked = True Then
strbetrag = 2
ElseIf rdb_tee.Checked = True And rdb_gross.Checked = True Then
strbetrag = 3
ElseIf rdb_tee.Checked = True And rdb_maxi.Checked = True Then
strbetrag = 4
ElseIf rdb_wasser.Checked = True And rdb_klein.Checked = True Then
strbetrag = 1
ElseIf rdb_wasser.Checked = True And rdb_mittel.Checked = True Then
strbetrag = 2
ElseIf rdb_wasser.Checked = True And rdb_gross.Checked = True Then
strbetrag = 3
ElseIf rdb_wasser.Checked = True And rdb_maxi.Checked = True Then
strbetrag = 4
ElseIf rdb_cola.Checked = True And rdb_klein.Checked = True Then
strbetrag = 1.5
ElseIf rdb_cola.Checked = True And rdb_mittel.Checked = True Then
strbetrag = 2.5
ElseIf rdb_cola.Checked = True And rdb_gross.Checked = True Then
strbetrag = 3.5
ElseIf rdb_cola.Checked = True And rdb_maxi.Checked = True Then
strbetrag = 4.5
End If
lbl_betrag.Text = strbetrag
End Sub
Private Sub Cmd_abbrechenClick(sender As System.Object, e As System.EventArgs)
me.Close
End Sub
Private Sub Cmd_bezahlenClick(sender As System.Object, e As System.EventArgs)
Dim strbetrag As Decimal
Dim dcEinwurf as Decimal
Dim dcBetrag as decimal
dcEinwurf = IIF(IsNumeric(txt_einwurf.text), txt_einwurf.text,0)
dcBetrag = lbl_Betrag.text
If txt_einwurf.Text = "" Then
messagebox.Show("Keinen Betrag eingegeben!", "Kaffeeautomat", _
Messageboxbuttons.OK, messageboxicon.Exclamation)
ElseIf txt_einwurf.Text < lbl_betrag.Text Then
strbetrag = lbl_betrag.Text - txt_einwurf.Text
Messagebox.Show("Bitte noch" & " " & strbetrag & " " & "€" & " " & _
"nachwerfen!", "Kaffeeautomat", messageboxbuttons.OK, _
Messageboxicon.Information)
Elseif txt_einwurf.Text > lbl_betrag.Text then
strbetrag = txt_einwurf.Text - lbl_betrag.Text
Messagebox.Show("Ihr Rückgeld:" & " " & strbetrag & " " & "€", _
"Kaffeeautomat", messageboxbuttons.OK, Messageboxicon.Information)
txt_einwurf.Text = ""
lbl_betrag.Text = ""
Else
messagebox.Show("Vielen Dank für den Kauf", "Kaffeeautomat", _
Messageboxbuttons.OK, messageboxicon.Exclamation)
txt_einwurf.Text = ""
lbl_betrag.Text = ""
End If
End SubIst vielleicht komliziert geschrieben, aber auf mich als einer der 3 Tage was damit macht bin ich doch recht stolz. 0 |