Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

formulier-array focus opvragen

rkuiper
2 antwoorden
  • Met de volgende code laadt ik 3x een nieuw formulier, gebaseerd op Form1. Dit gaat helemaal goed, maar hoe kan ik nu later opvragen welk formulier de Focus heeft. Ik wil dus x op kunnen vragen van het geactiveerde formulier. Hoe doe ik dat?

    Public NwForm(3) As New Form1

    Private Sub Command1_Click()

    for x=0 to 3
    Load NwForm(x)
    NwForm(x).Show
    x = x + 1
    next x

    (ik werk met VB 6.0)
    :evil:
  • Die x = x + 1 moet eruit.
    Next x zorgt er automatisch voor dat x opgehoogd wordt. M.a.w. Je denkt nu dat het werkt, maar dat is niet zo. Waarschijnlijk krijg je 2 forms minder dan je moet krijgen.
    (En dat is 4, geen 3 zoals je denkt, een array begint bij 0).

    Met screen.activeform.<naam textbox of activecontrol> kun je de inhoud van het veld opvragen.

    Zoiets dus (command 1 staat op form1, daarnaast een form2 met daarop textbox met naam Text1)

    [code:1:02cbe61077]
    Private Sub Command1_Click()

    Dim intX As Integer
    Dim frmForm(3) As Form2
    Dim fForm As Form

    For intX = 0 To 3

    Set frmForm(intX) = New Form2
    Load frmForm(intX)
    frmForm(intX).Text1 = CStr(intX)
    frmForm(intX).Show

    Next intX

    MsgBox Screen.ActiveForm.Text1

    End Sub

    Resultaat is een 3 nieuwe forms en een msgbox met daarin de waarde van x, opgehaald uit de textbox van het form dat de focus heeft.

    [/code:1:02cbe61077]

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.