Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Komma problem

Mitglied: badmaxx

badmaxx (Level 1) - Jetzt verbinden

22.12.2006, aktualisiert 28.12.2006, 3963 Aufrufe, 8 Kommentare

Hi @ all
ich versuche gerade einen (taschen)rechner zu programmiern nur bekomme ich es nich hin dass ich in die Textbox eine Kommazahl eingeben kann und dann das richtige Ergebnis bekomme. DAs komische ist wenn ich z. B. 5*5,5 kommt 15 raus wenn ich jetz aber 5*5.5 eigbebe kommt 27,5 raus. Wie schaff ich es dass ich 5,5 eingeben kann und trozdem das richtige Ergebnis bekomme? Ich benutze VB 2005 Express Edition.

Danke im Voraus

Gruß
MAxi
Mitglied: bastla
24.12.2006 um 20:18 Uhr
Hallo badmaxx!

Wenn Du den in die Textbox eingegebenen Text für eine Berechnung verwendest, solltest Du ihn eigentlich ohnehin konvertieren, zB mit CDbl() - damit wird auch das entsprechende Dezimaltrennzeichen erkannt.

Ansonsten bleibt Dir nur das gezielte Umwandeln des Kommas in einen Punkt in der Berechnung - Replace(TextBox1.Text, ",", ".") - oder die Umwandlung ohne Rücksicht auf die Optik direkt bei der Eingabe - dazu schreibst Du in "TextBox1_KeyPress"
01.
If e.KeyChar = "," Then e.KeyChar = "."
Empfehlen kann ich Dir aber nur die oben angesprochene Typkonvertierung.

Grüße
bastla
Bitte warten ..
Mitglied: badmaxx
27.12.2006 um 20:13 Uhr
Hi
danke schonmal für die hilfe.
Könntest du mir das genauer erklären wie ich des machen muss da ich noch nicht so lange mit vb arbeite.
Danke im voraus.
Gruß
Maxi
Bitte warten ..
Mitglied: bastla
27.12.2006 um 20:18 Uhr
Hallo badmaxx!

Im Prinzip musst Du nur in die Ausführung der Berechnung die Konvertierung einbauen - könnte ich Dir aber besser zeigen, wenn Du den entsprechenden Code postest ...

Grüße
bastla
Bitte warten ..
Mitglied: badmaxx
27.12.2006 um 23:09 Uhr
01.
Public Class Algebra
02.
 
03.
    Private Sub Grundrechenarten_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
04.
        Label3.Visible = False
05.
        Format(TextBox1.Text, "0,00")
06.
 
07.
    End Sub
08.
 
09.
    Private Sub Label2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label2.Click
10.
 
11.
 
12.
    End Sub
13.
 
14.
    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
15.
        End
16.
    End Sub
17.
 
18.
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
19.
 
20.
        If RadioButton1.Checked = True Then
21.
            Replace(TextBox1.Text, ",", ".")
22.
            TextBox3.Text = Val(TextBox1.Text) + Val(TextBox2.Text) 'Addition
23.
        End If
24.
 
25.
 
26.
        If RadioButton2.Checked = True Then TextBox3.Text = Val(TextBox1.Text) - Val(TextBox2.Text) 'Subtraktion
27.
 
28.
        If RadioButton3.Checked = True Then TextBox3.Text = Val(TextBox1.Text) * Val(TextBox2.Text) 'Multiplikation
29.
 
30.
        If RadioButton4.Checked = True Then TextBox3.Text = Val(TextBox1.Text) / Val(TextBox2.Text) 'Division
31.
 
32.
        If RadioButton5.Checked = True Then
33.
            TextBox3.Text = Val(TextBox1.Text) * Val(TextBox1.Text) 'Berechnung des Quadrats
34.
            TextBox2.Visible = True
35.
            TextBox2.Text = TextBox1.Text
36.
            Label2.Text = "x"
37.
        End If
38.
 
39.
        If RadioButton6.Checked = True Then 'Berechnung der Wurzel
40.
            TextBox3.Text = Math.Sqrt(TextBox1.Text)
41.
            Label2.Visible = False
42.
        End If
43.
 
44.
 
45.
 
46.
    End Sub
47.
 
48.
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
49.
        Me.Visible = False 'Zurück
50.
        Start.Visible = True
51.
    End Sub
52.
 
53.
    Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged
54.
        If RadioButton1.Checked = True Then
55.
            TextBox2.Visible = True
56.
            Label3.Visible = False
57.
            Label2.Text = "+"
58.
        End If
59.
 
60.
    End Sub
61.
 
62.
    Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton2.CheckedChanged
63.
        If RadioButton2.Checked = True Then
64.
            TextBox2.Visible = True
65.
            Label3.Visible = False
66.
            Label2.Text = "-"
67.
        End If
68.
    End Sub
69.
 
70.
    Private Sub RadioButton3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton3.CheckedChanged
71.
        If RadioButton3.Checked = True Then
72.
            TextBox2.Visible = True
73.
            Label3.Visible = False
74.
            Label2.Text = "x"
75.
        End If
76.
    End Sub
77.
 
78.
    Private Sub RadioButton4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton4.CheckedChanged
79.
        If RadioButton4.Checked = True Then
80.
            TextBox2.Visible = True
81.
            Label3.Visible = False
82.
            Label2.Text = "/"
83.
        End If
84.
    End Sub
85.
 
86.
    Private Sub RadioButton6_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton6.CheckedChanged
87.
        If RadioButton6.Checked = True Then
88.
            TextBox2.Visible = False
89.
            Label3.Visible = True
90.
            Label2.Text = ""
91.
        End If
92.
    End Sub
93.
 
94.
    Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox3.TextChanged
95.
        Format("0,000")
96.
    End Sub
97.
 
98.
    Private Sub RadioButton5_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton5.CheckedChanged
99.
        If RadioButton5.Checked = True Then
100.
            TextBox2.Visible = False
101.
            Label3.Visible = False
102.
            Label2.Text = "²"
103.
        End If
104.
    End Sub
105.
 
106.
    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
107.
    End Sub
108.
 
109.
    Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged 
110.
    End Sub
111.
End Class
ich hoff du kennst dich aus.
Bitte warten ..
Mitglied: bastla
28.12.2006 um 12:43 Uhr
Hallo badmaxx!

Du konvertierst im Prinzip ohnehin schon mit Val(), sodass Du nur stattdessen CDbl() dafür einsetzen müsstest:
01.
If RadioButton1.Checked = True Then
02.
    TextBox3.Text = CDbl(TextBox1.Text) + CDbl(TextBox2.Text) 'Addition
03.
End If
Wenn Du die Anzeige auf 2 Dezimalen runden willst (wie Du es in "Grundrechenarten_Load" versuchst, wo es aber nichts bringt), kannst Du den Formatcode "F" verwenden (oder benutzerdefiniert "0.00" - mit Punkt!):
01.
If RadioButton1.Checked = True Then
02.
    TextBox3.Text = Format(CDbl(TextBox1.Text) + CDbl(TextBox2.Text), "F") 'Addition
03.
End If
Grüße
bastla
Bitte warten ..
Mitglied: badmaxx
28.12.2006 um 15:36 Uhr
DANKE!!!!!!!!!!!!!!!!!!!!!!!!!!
Es funktieoniert so wie es soll!
DANKE!!!!!!!!!!!!!!!!!!!!!!!!!!

Gruß
Maxi

PS. Des mit "F" geht nicht aber mit "0.00" funktieonierts
Bitte warten ..
Mitglied: badmaxx
28.12.2006 um 15:36 Uhr
DANKE!!!!!!!!!!!!!!!!!!!!!!!!!!
Es funktieoniert so wie es soll!
DANKE!!!!!!!!!!!!!!!!!!!!!!!!!!

Gruß
Maxi
Bitte warten ..
Mitglied: badmaxx
28.12.2006 um 15:37 Uhr
DANKE!!!!!!!!!!!!!!!!!!!!!!
Es funktieoniert so wie es soll!!
DANKE!!!!!!!!!!!!!!!!!!!!!!

Gruß
Maxi
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Punkt durch Komma ersetzen
Frage von TingelTangelbatchBatch & Shell9 Kommentare

Hallo, für eine batch Datei suche ich folgende Hilfe / Code: Ich habe monatlich ca. 10 Textdatein welche Werte ...

Peripheriegeräte

Microsoft Sculpt - Komma gegen Punkt tauschen

gelöst Frage von TiTuxPeripheriegeräte3 Kommentare

Hallo, habe mir eine Microsof Sculpt Tastatur gekauft und bin auch sehr zufrieden. Allerdings befindet sich auf dem seperaten ...

Batch & Shell

CSV-Datei Komma durch Semikolon ersetzen

gelöst Frage von FalkITBatch & Shell8 Kommentare

Hi Zusammen, ich suche eine Möglichkeit in einer Komma getrennten CSV Datei alle Kommas die als Trenner dienen durch ...

Microsoft Office

VB ein bestimmtes Komma durch Punkt ersetzen

gelöst Frage von Enno13Microsoft Office4 Kommentare

Hallo Wie kann ich denn ein bestimmtest Komma durch einen Punkt ersetzten lassen über VB. Dieses Komma ist eine ...

Neue Wissensbeiträge
Windows Server
Anzahl von Gruppenrichtlinien
Erfahrungsbericht von Bullii vor 6 StundenWindows Server

Hallo, mich interessiert brennend, wieviele Gruppenrichtlinienobjekte, ihr so bei euch habt? Ich versuchte eigentlich immer die Gruppenrichtlinienobjekte soweit wie ...

iOS
WatchChat für Whatsapp
Tipp von Criemo vor 10 StundeniOS

Ziemlich coole App für WhatsApp User in Verbindung mit der Apple Watch. Gibts für iOS sowohl als auch für ...

iOS
IOS hat nen Cursor !!!
Tipp von Criemo vor 22 StundeniOS5 Kommentare

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Off Topic
Avengers 4: Endgame - Erster Trailer
Information von Frank vor 3 TagenOff Topic2 Kommentare

Ich weiß es ist Off Topic, aber ich freue mich auf diesen Film und vielleicht geht es anderen hier ...

Heiß diskutierte Inhalte
Exchange Server
Exchange Server 2010: Keine Eingehenden E-MAils
gelöst Frage von gabeBUExchange Server17 Kommentare

Hallo Zusammen Ich habe das kurzen auf dem Exchange 2010 Server das Problem, dass ich keine externen E-Mails mehr ...

Server
Server in zwei verschiedene Netzwerke einbinden
gelöst Frage von BennyFServer13 Kommentare

Hallo zusammen, bei uns im Haus sind im Erdgeschoss die Geschäftsräume und ab dem 1. Stock sind unsere privaten ...

Netzwerkmanagement
Ticketsystem für eine Kommune gesucht
gelöst Frage von akovisNetzwerkmanagement11 Kommentare

Ich suche aktuell ein Ticketsystem für eine Kleinstadt von 13000 Einwaohnern. Das System soll alle Anfragen aus verschiedenen Kanälen ...

Windows Netzwerk
Kerio. Kann keine Mails empfangen aber senden. Wer ist schuld. Kerio oder Windows domäne?
Frage von frosch2Windows Netzwerk11 Kommentare

Hallo, es existiert ein Problem bei uns mit dem mailen. Alle bestehenden Nutzer können mailen. Raus wie rein. Neuen ...