Gå til innhold

Anbefalte innlegg

Hallo

 

Tenkte at det kunne bli mindre slitsom i store prosjekter hvis jeg kunne lagd del for del og til slutt klæsja alt sammen inn i en "hoved-form". Har sett at det går ann, men skjønner ikke hvordan de har gjort det.. Går den ann uten noe "skille" eller borderstyle mellom formene?

 

Jonas

 

Edit: vb-iconet ser rart ut på sånne former. Jeg får likt icon hvis jeg setter MDIChild til True. Er jeg på riktig vei?

Endret av Jonas
Lenke til kommentar
Videoannonse
Annonse
Edit: vb-iconet ser rart ut på sånne former. Jeg får likt icon hvis jeg setter MDIChild til True. Er jeg på riktig vei?

Det stemmer.

 

Du setter ganske enkelt inn en MDIForm i prosjektet (Project > Add MDI form) og setter MDIChild til True på alle formene du vil ha inni MDI formen.

 

Dette kan også løses ved bruk av API-call SetParent. Eksempelvis er denne koden:

 

Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

Private Sub Form_Load()

Form2.Show
SetParent Form2.hWnd, Form1.hWnd

End Sub

Endret av aadnk
Lenke til kommentar

Funka hvis jeg tar "new mdi-form", men da kan jeg ikke skifte borderstyle. Tar jeg en vanlig form, skifter borderstyle og setter MDIChild til true får jeg bare error:

No MDI-form available to load

Må jeg bruke "new mdi form" eller finnes det en annen løsning?

Lenke til kommentar

Som allerede benevnt kan du bruke SetParent. Jeg vil helst ikke gjenta det jeg allerede har sagt, men jeg kan gjøre klart at alle formene som skal inn i hovedformen må kalles med denne koden.

 

Hvis du da f.eks har Form1 som hovedform, og ønsker at Form2 og Form3 skal inn i denne, legger du denne koden inn i Form1:

 

Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

Private Sub Form_Load()

Form2.Show
Form3.Show

SetParent Form2.hWnd, Form1.hWnd
SetParent Form3.hWnd, Form1.hWnd

End Sub

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...