Newb: Quadrat berechnen

MIniMe_

Erfahrenes Mitglied
hab mal erste gehversuche gemacht, und ein programm gemacht, dass das quadrat einer zahl berechnen soll. geht aba nich.
den ersten teil könnt ihr überlesen, das is nur son zeug was ich ma wieder nicht verstehe.. ;)
Code:
Option Explicit On 
Public Class Form1
    Inherits System.Windows.Forms.Form

#Region " Windows Form Designer generated code "

    Public Sub New()
        MyBase.New()

        ' Dieser Aufruf ist für den Windows-Formular-Designer erforderlich.
        InitializeComponent()

        ' Initialisierungen nach dem Aufruf InitializeComponent() hinzufügen

    End Sub

    ' Form überschreibt den Löschvorgang zur Bereinigung der Komponentenliste.
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        If disposing Then
            If Not (components Is Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub
    Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
    Friend WithEvents Button1 As System.Windows.Forms.Button

    ' Für Windows-Formular-Designer erforderlich
    Private components As System.ComponentModel.Container

    'HINWEIS: Die folgende Prozedur ist für den Windows-Formular-Designer erforderlich
    'Sie kann mit dem Windows-Formular-Designer modifiziert werden.
    'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        Me.Button1 = New System.Windows.Forms.Button()
        Me.TextBox1 = New System.Windows.Forms.TextBox()
        Me.SuspendLayout()
        '
        'Button1
        '
        Me.Button1.Location = New System.Drawing.Point(40, 112)
        Me.Button1.Name = "Button1"
        Me.Button1.Size = New System.Drawing.Size(160, 48)
        Me.Button1.TabIndex = 1
        Me.Button1.Text = "&Quadrat berechnen"
        '
        'TextBox1
        '
        Me.TextBox1.Location = New System.Drawing.Point(40, 40)
        Me.TextBox1.Name = "TextBox1"
        Me.TextBox1.Size = New System.Drawing.Size(160, 20)
        Me.TextBox1.TabIndex = 0
        Me.TextBox1.Text = ""
        '
        'Form1
        '
        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
        Me.ClientSize = New System.Drawing.Size(240, 205)
        Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.Button1, Me.TextBox1})
        Me.Name = "Form1"
        Me.Text = "Form1"
        Me.ResumeLayout(False)

    End Sub

#End Region
 
//
//        ab hier kommt mein code
//

   Dim Text1 As Double
    Dim ergebnis As Double

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub

    Private Sub Text1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        if Text1 == "" then 
            MsgBox("Bitte eine Zahl eingeben")
        Else
            ergebnis = Text1 * Text1
            MsgBox(ergebnis)
        End If

    End Sub
End Class
 
öhm irgendwie steig ich durch den code auch nicht ganz durch?
mit welcher vb version issen der erstellt?

naja egal also ich geh jetzt mal davon aus du hast ein textfeld(text1) und einen button(command1) dann wäre das ganze folgendermaßenPrivate

Code:
Sub Command1_Click()
If IsNumeric(Text1.Text) Then ' fragt ab ob der inhalt in text1 auch wirklich eine zahl ist
    ergebnis = Text1.Text * Text1.Text 'macht die berechnung
    MsgBox ergebnis ' und gibt das ergebnis in einer msgbox aus
End If
End Sub

was der ganze andere code bei dir da oben soll weiß ich auch nicht, wie schon oben gefragt mit welcher vb version arbeitest du denn?
 
müsste nich noch VAL eingefügt werden?
Code:
Sub Command1_Click()
If IsNumeric(Text1.Text) Then ' fragt ab ob der inhalt in text1 auch wirklich eine zahl ist
    ergebnis = val(Text1.Text) * val(Text1.Text) 'macht die berechnung
    MsgBox ergebnis ' und gibt das ergebnis in einer msgbox aus
End If
End Sub
 
theorethisch ja, praktisch aber nicht weil durch die abfrage isnumeric schon gewährleistet ist (oder sein sollte) das es sich um eine zahl handelt
 
des is ja das komische... ich hab son komisches "beta"-teil von M$, visual studio .NET
das fügt diesen code da oben automatisch dazu...

was ist "VAL"?
 
du hast geschrieben:

if Text1 == "" then
MsgBox("Bitte eine Zahl eingeben")
Else
ergebnis = Text1 * Text1
MsgBox(ergebnis)
End If

ich glaube du hättest statt Text1 immer text1.text schreiben sollen

cu tirolausserfern
 
das weiß ich auch nicht so genau -> mache es deshalb immer mit "text1.text". was bringt dein Visual Basic für eine Fehlermeldung? type mismatch? dann schreib "cdbl(text1.text)" - vielleicht geht das?

cu tirolausserfern
 
das ist eigentlich egal, denn wen mann einfach Text1 schreibt, dass bekommt er als default "text"

also, "text1.text" ist das gleiche wie "text1"
 
Zurück