Basis_Prog1

Dieses Programm ist zum Einrichten eines Grundprogrammes mit den Standard-Werkzeugen 
(zwei Label, zwei TextBoxen, vier Command-Button). Alle behalten ihre von VB vergebenen Standardnamen, so da nach Integration der genannten Elemente (ohne jegliche nderung) direkt Lauffhigkeit vorliegt. Als Beispiel wird die Berechnung einer Kreisflche gewhlt.

ProgrammCode beginnt nach dieser Zeile! Ab hier markieren und kopieren und dann in VB-Projekt eingeben.

Dim R!, A!  'Deklaration von Radius und Flche als Single
Const PI = 3.141593

Private Sub Form_Load() 'Load-Prozedur
  Dim Diff As Integer                     'Zur Pos. der Commands
  Show  'zeigt Form an
  Command1.Caption = "&Rechne"  'RechneButton mit Zugriff ber Alt + R
  Command2.Caption = "&Neu" 'NeuButton mit Zugriff ber Alt + N
  Command3.Caption = "Info"  'InfoButton
  Command4.Caption = "&Ende"  'EndeButton mit Zugriff ber Alt + E
  Command3.Cancel = True
  Form1.Caption = "berschrift in der Load zuweisen!"
  Label1.Caption = " Durchmesser D in mm "
  Label2.Caption = " Flche A in mm"
  Label1.AutoSize = True
  Label2.Width = Label1.Width
  Label2.Height = Label1.Height
  Label1.BackColor = QBColor(8)
  Label2.BackColor = QBColor(8)
  Label1.ForeColor = QBColor(15)
  Label2.ForeColor = QBColor(15)
  Command1.ToolTipText = "Ruft Rechne-Prozedur auf"
  Command2.ToolTipText = "Bereitet neue Rechnung vor"
  Command3.ToolTipText = "Info ein mit MouseDown"
  Command4.ToolTipText = "Programm beenden; auch mit Esc mglich"
  Text1.Text = "" 'berschreiben des Boxeninhalts
  Text2.Text = "" 'berschreiben des Boxeninhalts
  Text1.Height = 285
  Text2.Height = Text1.Height
  Label1.Height = Text1.Height
  Label2.Height = Text1.Height
  Text1.ToolTipText = "EingabeBox"
  Text2.Enabled = False
  Text2.TabStop = False
  Text1.SetFocus  'Fokus an Text1 bergeben
  'Form zentrieren auf Bildschirm
  Form1.Left = (Screen.Width - Form1.Width) \ 2
  Form1.Top = (Screen.Height - Form1.Height) \ 2
  
  Label1.Top = Text1.Top '+ Text1.Height - Label1.Height
  Label2.Top = Text2.Top '+ Text2.Height - Label2.Height

  
  Command1.Width = (Form1.Width - 780) / 4
  Command2.Width = Command1.Width
  Command3.Width = Command1.Width
  Command4.Width = Command1.Width
 
  Diff = (Form1.Width - 4 * Command1.Width) \ 5
  'Diff = 10
  Command1.Left = Diff
  Command2.Left = Command1.Width + 2 * (Diff - 20)
  Command3.Left = 2 * Command1.Width + 3 * (Diff - 20)
  Command4.Left = 3 * Command1.Width + 4 * (Diff - 20)
  'Print Diff, Form1.Width
End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)   'Sieb
  Select Case KeyAscii
  Case 44
    KeyAscii = 46 'Komma wird Punkt
  Case 8, 46, 48 To 57
    'Rcktaste, Punkt, Zahlen von 0 bis 9 (Case bleibt leer)
  Case 13 'Return-Taste
    Call Command1_Click 'Aufruf der Rechne-Prozedur
 ' Case 27 'Esc-Taste zum Beenden (im Prog mit Cancel true fr Command3)
 '   End
  Case Else
    KeyAscii = 0  'alle anderen Tasten unterdrcken
End Select
End Sub

Private Sub Command1_Click()  'Rechen-Prozedur
  'Dim R!, A!  'Deklaration von Radius und Flche als Single
  'Const PI = 3.141593
  If Text1.Text = "" Then
    MsgBox "Durchmesser eingeben!", 48, "Hinweis"
    Text1.SetFocus
    Exit Sub
  End If
  D = Val(Text1.Text) 'Eingabe >>Durchmesser
  A = D ^ 2 * PI / 4  'Verarbeitung >>Flche A
  Text2.Text = Str$(A)  'Ausgabe >>Ergebnis in Text2
  Command2.SetFocus 'Fokus an Command2 bergeben
End Sub

Private Sub Command2_Click()  'Neu
  Text1.Text = "" 'Leerstring ohne Lcke bewirkt
  Text2.Text = "" 'berschreiben des Boxeninhalts
  Text1.SetFocus  'Fokus an Text1 bergeben
End Sub

Private Sub Command4_Click()  'Ende
  End 'Beendet Programm
End Sub

Private Sub Command3_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  Info$ = "Das Zentrieren der Form auf dem Bildschirm ist nur ber ProgrammCode" & Chr$(13)
  Info$ = Info$ & "mglich. Die StartUpPosition der Form ist schreibgeschtzt und kann " & Chr$(13)
  Info$ = Info$ & "daher nur zur Entwurfszeit gesetzt werden. MaxButton ebenso! " & Chr$(13)
  Info$ = Info$ & "Die 2 letzten Zeilen in der Load bewirken das Formzentrieren, s. dort."
  Print Info$
End Sub

Private Sub Command3_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  Cls
  Text1.Text = "": Text2.Text = ""
  Text1.SetFocus
End Sub
