Class Form1 aufrufen und Sub starten - geht net.

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von gfcwfzkm.

    Class Form1 aufrufen und Sub starten - geht net.

    Hi,

    ich wollte die Klasse Form1 aufrufen, und möchte, das die Komponenten (buttons, etc..) gestartet werden.

    Jedoch funzt meine methode wohl nicht...

    Hier mein Code:

    VB.NET-Quellcode

    1. 'WindowsFormsApplication
    2. #Region "Imports"
    3. Imports System.Windows.Forms
    4. Imports System
    5. Imports System.Diagnostics
    6. #End Region
    7. Public Class Main
    8. Public Shared Sub Main()
    9. Application.Run(New Form1)
    10. End Sub
    11. End Class
    12. Public Class Form1
    13. Inherits System.Windows.Forms.Form
    14. Sub Einfügen()
    15. Dim Button1 as New System.Windows.Forms.Button()
    16. 'Dim Form1 as new System.Windows.Forms.Form '
    17. 'Button1
    18. '
    19. Button1.Location = New System.Drawing.Point(12, 12)
    20. Button1.Name = "Button1"
    21. Button1.Size = New System.Drawing.Size(175, 23)
    22. Button1.TabIndex = 0
    23. Button1.Text = "Testversion Starten..."
    24. Button1.UseVisualStyleBackColor = True
    25. '
    26. 'Form1
    27. '
    28. Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
    29. Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
    30. Me.ClientSize = New System.Drawing.Size(199, 44)
    31. Me.Controls.Add(Button1)
    32. Me.MaximizeBox = False
    33. Me.MinimizeBox = False
    34. Me.Name = "Form1"
    35. Me.Text = "Form1"
    36. Me.ResumeLayout(False)
    37. Me.ShowDialog
    38. End Sub
    39. End Class


    Könnt ihr mir weiterhelfen?

    mfg

    gfc
    das ist mein Problem.

    Wie rufe ich diese Klasse ausserhalb einer Sub auf, also wie z.B. Inherits System.Windows.Forms.Form Immer aufgerufen wird?

    mfg

    VB.NET-Quellcode

    1. Public Class Main
    2. Public Shared Sub Main()
    3. Using Frm As New Form1
    4. Frm.Einfügen() ' Einfügen muss als Public deklariert sein
    5. Application.Run(Frm)
    6. End Using
    7. End Sub
    8. End Class

    Andere Möglichkeiten:
    • Schreibe den Code der Einfügen-Methode in den Konstruktor der Form1-Klasse (Public Sub New()).
    • Rufe im Konstruktor der Form1-Klasse die Einfügen-Methode auf. Würde ich bevorzugen.


    Btw., sind das wirklich die grundlegendsten Grundlagen der objektorientierten Programmierung.
    Die sollte man schon beherrschen, wenn man in einer Sprache wie VB.NET programmiert.
    Schon, aber diese sind mir nicht in den Sinn gefallen, da ich den "Code hinter dem Form-Designer" vom VB nur sehr selten anschaue (also wenn irgend ne design-dll fehlt) ^^

    Das mit Public Sub New() funzt wunderbar, danke dir =)

    mfg

    gfcwfzkm