Florian Pankr: dumme Visual Basic Frage

1. Warum bin ich hier? Weil ich normalerweise viel mit html mache, jetzt aber mich etwas mit visual Basic beschäftigte
2. Was erwarte ich hier? Hier sind geduldige Profis, die einen weiterhelfen, aber auch strenge Poster
3. Was habe ich bis jetzt recherchiert? Ich habe google angeworfen, Visual Basic Foren durchgeguckt, youtube Videos durchgeguckt
4. Was will ich machen? Ich habe mit Visual Basic ein einfaches Programm verfasst das WMI nutzt und das den Festplattenspeicher ausliest. Dabei habe ich drei Label erstellt und mein Programmcode ist der folgende

Public Class Form1

Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
        Label1.Text = Int(My.Computer.FileSystem.GetDriveInfo("C:").TotalSize / 1024 / 1024 / 1024) & " GB Gesamtgröße"
        Label2.Text = Int(My.Computer.FileSystem.GetDriveInfo("C:").TotalFreeSpace / 1024 / 1024 / 1024) & " GB freier Speicher"
        Label3.Text = Val(Label1.Text) - Val(Label2.Text) & " GB belegter Speicher"
    End Sub
End Class

5. Was passt nicht? Mein Programm macht genau das was es machen sollte, und ich bin soweit erst mal stolz. Aber wenn ich es starte, muß ich zuerst auf den Label1 klicken das das Programm startet. Und hierfür bin ich wohl zu dumm, weil ich kein anderes Programm habe, wo ich erst irgendwo drauf klicken muß.
6. Was wünsch ich mir? Ich bräuchte nur einen Hinweis was ich tun soll. Irgnedwie muß es eine Funktion geben die sagte "Hey Visual Basic Programm du wirst aufgerufen, starte doch mal das Label1 und der Anwender und der Programmierer ist zufrieden"
7. Wie könnt ihr mir weiterhelfen? Ja, wie kann ich in Visual Basic dafür sorgen, das das Label1 automatisch gestartet wird. Es ist sicher dumm, wenn in meinem Programm steht "Hey Anwender klicke doch mal bitte auf Label1.

  1. Moin!

    1. Warum bin ich hier? Weil ich normalerweise viel mit html mache, jetzt aber mich etwas mit visual Basic beschäftigte
    2. Was erwarte ich hier? Hier sind geduldige Profis, die einen weiterhelfen, aber auch strenge Poster
    3. Was habe ich bis jetzt recherchiert? Ich habe google angeworfen, Visual Basic Foren durchgeguckt, youtube Videos durchgeguckt
    4. Was will ich machen? Ich habe mit Visual Basic ein einfaches Programm verfasst das WMI nutzt und das den Festplattenspeicher ausliest. Dabei habe ich drei Label erstellt und mein Programmcode ist der folgende

    Public Class Form1

    Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
            Label1.Text = Int(My.Computer.FileSystem.GetDriveInfo("C:").TotalSize / 1024 / 1024 / 1024) & " GB Gesamtgröße"
            Label2.Text = Int(My.Computer.FileSystem.GetDriveInfo("C:").TotalFreeSpace / 1024 / 1024 / 1024) & " GB freier Speicher"
            Label3.Text = Val(Label1.Text) - Val(Label2.Text) & " GB belegter Speicher"
        End Sub
    End Class

    1. Was passt nicht? Mein Programm macht genau das was es machen sollte, und ich bin soweit erst mal stolz. Aber wenn ich es starte, muß ich zuerst auf den Label1 klicken das das Programm startet. Und hierfür bin ich wohl zu dumm, weil ich kein anderes Programm habe, wo ich erst irgendwo drauf klicken muß.

    Das hast du aber so programmiert. "Label1_Click Handles Label1.Click" - das ist äquivalent zum onclick-Handler von Javascript. Und bedingt: Erst klicken, dann macht es.

    Was du wohl eher willst, ist ein Ausführen deiner Funktion schon beim Programmstart. Ich bin mir sicher, das VisualBasic-Tutorial deiner Wahl wird dir erklären, wie man den Programmstart mit einer Funktion belegt.

    - Sven Rautenberg

    1. Das hast du aber so programmiert. "Label1_Click Handles Label1.Click" - das ist äquivalent zum onclick-Handler von Javascript. Und bedingt: Erst klicken, dann macht es.

      Was du wohl eher willst, ist ein Ausführen deiner Funktion schon beim Programmstart. Ich bin mir sicher, das VisualBasic-Tutorial deiner Wahl wird dir erklären, wie man den Programmstart mit einer Funktion belegt.

      ** Problem gelöst **

      Danke für den Tipp, natürlich muß man dann sagen das es nicht per click sondern beim Ausführen aktiviert wird. Oh mann, selfhtml und Sven tausend mal Dank!

  2. Hallo Florian,

    1. Was wünsch ich mir? Ich bräuchte nur einen Hinweis was ich tun soll. Irgnedwie muß es eine Funktion geben die sagte "Hey Visual Basic Programm du wirst aufgerufen, starte doch mal das Label1 und der Anwender und der Programmierer ist zufrieden"

    Ok, VB ist bei mir lange her, aber das sollte sich mit dem Form.Load-Ereignis realisieren lassen.

    Grüße,
    Thomas