# Taschenrechner mit VB6|Verbesserungen?



## BjöRRn (1. Februar 2005)

Tach.

Ich beschäftige mich seit wenigen Wochen mit VisualBasic und hab nun versucht einen Taschenrechner zu programmieren.

EIgentlich war mein Plan, den Windowsrechner zu kopoieren..der Plan ist über die DesignPhase nicht hinweg gekommen  

Also hab ich mich für den Anfang auf die vier Grundrechenarten beschränkt und auch einen Rechner hinbekommen.

Meine erste schwierigkeit war es, die eingetippten Zahlen jeweils um eine Stelle nach links zu verschieben..

Aber jetzt geht alles.

Was jetzt noch ansteht, aber wobei ich noch nicht weiß wie das geht ist folgendes :

- Die Zahlen lassen sich nur über die Maus eingeben. Parallel wäre es nett, wenn das auch über die Tastatur zu machen wäre.

- Wenn ich eine Zahl drücke und dann eine Rechenoperation auswähle verschwindet die Zahl. Besser (und richtiger) wäre es, wenn die Zahl stehen bleiben würde.

Falls jemand Lust hat, kann er sich ja mal meinen AnfängerCode ansehen . 

Für Tipps bin ich dankbar.. Nen Lehrer hab ich nicht..


```
Option Explicit
Dim Zwischenspeicher1, Zwischenspeicher2, Ergebnis, i, j, Zahl, Zahl1, Zahl2, plus, minus, mal, geteilt As Double
Private Sub cmd_0_Click()
	Zahl = 0
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
 
Private Sub cmd_1_Click()
	Zahl = 1
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
Private Sub cmd_2_Click()
	Zahl = 2
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
Private Sub cmd_3_Click()
	Zahl = 3
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
 
Private Sub cmd_4_Click()
	Zahl = 4
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
Private Sub cmd_5_Click()
	Zahl = 5
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
Private Sub cmd_6_Click()
	Zahl = 6
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
Private Sub cmd_7_Click()
	Zahl = 7
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
Private Sub cmd_8_Click()
	Zahl = 8
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
Private Sub cmd_9_Click()
	Zahl = 9
	txt_Ergebnis.Text = txt_Ergebnis.Text + CStr(Zahl)
	Label1.Caption = Label1.Caption + CStr(Zahl)
End Sub
Private Sub cmd_Rechnen_Click()
 
	Dim Rechenoperation As String
	Ergebnis = cmd_Rechnen
 
	i = CDbl(Label1.Caption)
	j = CDbl(Label2.Caption)
 
	If geteilt = True Then
	txt_Ergebnis.Text = CDbl(j) / CDbl(i)
	End If
 
	If mal = True Then
	txt_Ergebnis.Text = CDbl(j) * CDbl(i)
	End If
 
	If minus = True Then
	txt_Ergebnis.Text = CDbl(j) - CDbl(i)
	End If
 
	If plus = True Then
	txt_Ergebnis.Text = CDbl(j) + CDbl(i)
	End If
 
End Sub
 
Private Sub Command1_Click()
	txt_Ergebnis.Text = ""
	Label1.Caption = ""
	'Variable und Display löschen
End Sub
Private Sub Command2_Click()
	txt_Ergebnis.Text = ""
	Label1.Caption = ""
	Label2.Caption = ""
End Sub
Private Sub Label1_Click()
	Zwischenspeicher1 = Label1.Caption
End Sub
Private Sub Label2_Click()
	Zwischenspeicher2 = Label2.Caption
End Sub
Private Sub mnuAuschneiden_Click()
	Clipboard.Clear
		Clipboard.SetData Text1.SelText
			Text1.SelText = ""
End Sub
Private Sub mnuBeenden_Click()
	End
End Sub
Private Sub mnuEinfügen_Click()
	Text1.SelText = Clipboard.GetData()
End Sub
Private Sub mnuKopieren_Click()
	Clipboard.Clear
		Clipboard.SetText Text1.SelText
End Sub
 
Private Sub optGeteilt_Click()
	geteilt = optGeteilt
	If geteilt = True Then
	Label2.Caption = txt_Ergebnis.Text
	txt_Ergebnis.Text = ""
	Label1.Caption = ""
	End If
End Sub
Private Sub optMal_Click()
	mal = optMal
	If mal = True Then
	Label2.Caption = txt_Ergebnis.Text
	txt_Ergebnis.Text = Label.Caption
	Label1.Caption = ""
	End If
End Sub
Private Sub optMinus_Click()
minus = optMinus
	If minus = True Then
	Label2.Caption = txt_Ergebnis.Text
	txt_Ergebnis.Text = ""
	Label1.Caption = ""
	End If
 
End Sub
Private Sub optPlus_Click()
plus = optPlus
	If plus = True Then
	Label2.Caption = txt_Ergebnis.Text
	txt_Ergebnis.Text = ""
	Label1.Caption = ""
	End If
 
 
End Sub
```
 

Ach ja.. Vorstellen wollt ich mich auch noch..

Mein Name ist Björn, ich bin 25 Jahren und bin Angestellter einer Firma die sich mit radiometrischer Messtechnik beschäftigt.

Ich komme aus Essen in NRW und finde Visual Basic sehr spannend..

^^


----------



## Merlin_78 (1. Februar 2005)

Hi BjöRRn,

nur mit dem .vbp-File kann man nichts anfangen. Du mußt schon alles reinpacken, auch die Formulare.


----------



## BjöRRn (1. Februar 2005)

oh.. ich hab immer nur eine Datei geöffnet und dann erschien der Code bei mir

Aber jetzt habe ich 3 gleichnamige Dateien mit verschiedenen endungen..

Edit: Mittlerweile hab ichs geschafft, mit dem Ergebnis weiter zu rechnen...


```
If geteilt = True Then
	txt_Ergebnis.Text = CDbl(j) / CDbl(i)
	ElseIf txt_Ergebnis.Text Then
	txt_Ergebnis.Text = CDbl(x) / CDbl(i)
	End If
```


----------



## sensation (15. Juli 2007)

hey der ist cool geworden und geht ich habe hier ein tut gefunde bei dem er nicht geht :-(!
Greez Steffen


----------

