Jag har ett MDI-formulär, med en massa child-formulär. Jag skulle vilja ha det så att när man öppna ett formulär(child) så göms resten. Jag är inte helt hemma på detta, men borde man inte kunna göra en Collection av dessa formulär? Så sätta collection.hide eller nåt liknande? Kolla på samlingen forms! Tack, jag tror nog att du har någonting på gång här. Skall kolla när jag kommer hem. Antagligen så har jag missuppfattatt någonting eller... Hej igen.Visa-göm formulär.
I stället för att behöva skriva:
frmKategori.hide
frmAlbum.hide
frmForfatare.show osv
Finns det inget kommando som gömmer alla formulären, och att man sen kan ta fram det formuläret man vill ha?Sv: Visa-göm formulär.
/EESv: Visa-göm formulär.
Det skulle kunna lösas så här kanske:
<code>
Public Sub HideForms(visibleForm As String)
Dim f As Form
For each f In Forms
If f.Name = visibleForm Or f.Name = "frmMDI" Then 'eller vad ditt MDIformulär heter
f.Visible = True
Else
f.Visible = False
End if
Next
End Sub
</code>
OBS. Synataxfel kan förekomma, kan ej testa här.
Men tankegången bör vara riktig...Sv: Visa-göm formulär.
Sv: Visa-göm formulär.
Jag la ner suben du gjorde:
Public Sub HideForms(visibleForm As String)
Dim f As Form
For Each f In Forms
If f.Name = visibleForm Or f.Name = "MDIForm1" Then 'eller vad ditt MDIformulär heter
f.Visible = True
Else
f.Visible = False
End If
Next
End Sub
När jag sedan drar igång subben med HideForm, så ville den ha ett agrument med.
Jag trodde att agrumentet skulle vara det formulär som jag ville visa, men då får jag error:
Wrong number off agruments or invalid property assingment.
Så här försökte jag.
Private Sub mnCdTitel_Click()
HideForms (frmCdTitlar)
frmCdTitlar.Show
Vad gör jag för fel?Sv: Visa-göm formulär.
Testa detta:
Private Sub mnCdTitel_Click()
Call HideForms ("frmCdTitlar") 'Detta formulär kommer att visas om det finns laddat i minnet