kostenloser Webspace werbefrei: lima-city


Mehrere Forms mit VB ???

lima-cityForumProgrammiersprachenBasic

  1. Autor dieses Themas

    k***************3

    Hallo,
    ich wollte fragen wie ich mit einem Befehl 100 Fenster oder Forms aufrufen kann ohne alles einzeln zu schreiben. Allerdings sollen sich alle Fenster bei einem Klick auf Leertaste wieder schlie?en. Wie k?nnte ich das schreiben?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. b*********t

    Hi,
    du machst dir ne form, von der aus das aufgerufen wird, am besten via button. (frmMain)
    dann machst du dir eine form, die so aussieht, wie deine 100 aussehen sollen. (frmToShow)

    dann schreibst du oben in frmmain:
    dim Fenster(99) as form
    in den code des buttons auf frmmain:

    dim i as integer

    for i = 0 to 99
    set fenster(i) = new frmtoshow
    fenster(i).show
    next i


    das ist der code f?r vb6. falls du .net hast, sag bescheid.

    jetzt sind die forms da. da sie die taskleiste ?berf?llen, werden sie gruppiert, und du kannst sie so schlie?en (wobei du damit, wenn du das programm nicht als exe ausf?hrst) auch vb beendest. der code zum schlie?en der forms:

    dim i as integer
    for i = 0 to 99
    unload fenster(i)
    next i

    du kannst z.b. diesen code in frm main schreiben:
    public sub machsiezu()
    dim i as integer
    for i = 0 to 99
    unload fenster(i)
    next i
    end sub

    und dann einen button auf deiner frmtoshow machen, mit dem code:
    frmmain.machsiezu

    und dann hast du auf jeder der 100 formen einen button zum schlie?en

    viele gr??e
    philipp keck
  4. Autor dieses Themas

    k***************3

    Tjo ne ich arbeite mit VB 2005, aber ich hab noch ne uralt Entwicklngsumgebung von VB6. W?re abaer nett wenn du das in VB 2005 umdichten k?nnstes.

    Thanks im Voraus
  5. b*********t

    Meine Formen hei?en form1 und form2. Hier der code von form1:

    Public Class Form1
        Dim Formen(99) As Form
    
        Public Sub closethem()
            On Error Resume Next
            Dim i As Integer
            For i = 0 To 99
                Formen(i).Close()
            Next
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            On Error Resume Next
            Dim i As Integer
            For i = 0 To 99
                Formen(i) = New Form2
                Formen(i).Show()
            Next
        End Sub
    End Class


    und der von form2:
    Public Class Form2
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Form1.closethem()
        End Sub
    
        Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
        End Sub
    End Class


    nat?rlich kannst du die buttons auch durch beliebige ereignisse wie das ablaufen eines timers ersetzen. auch kannst du die anordnung der neuen form2s ?ndern, wobei ich zu faul bin, dir eine berechnung zu schreiben.
    wichtig ist dabei, dass du das ganze innerhalb der for-i machst, ganz unten dran.

    viele gr??e
    philipp keck
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!