Toon posts:

[vb] mdichild maximizen binnen mdiform

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

Is het mogelijk om een mdichild te maximizen zonder dat deze samensmelt met het mdi formulier zoals op onderstaande afbeelding ?

Ik heb al een tijdje lopen zoeken op GOT en GOOGLE maar ik weet niet precies wat ik zoek eigenlijk.

Mischien dat iemand me een eindje op weg kan helpen ?

Alvast bedankt

Afbeeldingslocatie: http://www.tweakers.net/ext/f/30704/thumb.jpg

  • wasco
  • Registratie: April 2003
  • Laatst online: 04-05 11:18

wasco

brightest crayon in the box

(jarig!)
Is het mogelijk om een mdichild te maximizen zonder dat deze samensmelt met het mdi formulier zoals op onderstaande afbeelding ?
ik zie nou niet echt een samensmelting
wacht ff, volgens mij stel je de vraag verkeerd?


Klopt dit?
ik wil graag dat wanneer ik een mdichild maximise het eruit gaat zien zoals op mijn afbeelding. Dit wijkt af van het normale VB gedrag in het feit dat in mijn afbeelding de mdichild en de mdiform NIET samensmelten.

of klopt dit niet?

[ Voor 5% gewijzigd door wasco op 02-05-2004 19:07 ]

wasco [the brightest crayon in the box]


  • Twee Dee
  • Registratie: Juli 2002
  • Laatst online: 04-05 15:29

Twee Dee

Morgen weer een ondertitel.

Helaas maar dat gaat niet.
Wat jij beschrijft is namelijk standaardgedrag voor MDI forms. Wil je dit toch op jouw manier hebben, dan zul je dus eigenlijk geen gebruik moeten maken van Microsoft's MDI forms, maar zelf een hele berg code moeten schrijven, of een extern component aanschaffen.

Je zou het misschien wel kunnen faken, dan zou je het maximize event moeten afvangen vóórdat het systeem het event verwerkt. Dit heet subclassing.

Als je niet veel dieper wilt gaan programmeren maar het simpel wilde oplossen dan is het antwoord dus simpelweg nee :)

[ Voor 25% gewijzigd door Twee Dee op 02-05-2004 19:05 ]

Luister nou gewoon naar me, dat voorkomt dat ik later "zie je wel" moet zeggen.


Verwijderd

Topicstarter
wasco schreef op 02 mei 2004 @ 18:25:
[...]

ik zie nou niet echt een samensmelting
wacht ff, volgens mij stel je de vraag verkeerd?


Klopt dit?
ik wil graag dat wanneer ik een mdichild maximise het eruit gaat zien zoals op mijn afbeelding. Dit wijkt af van het normale VB gedrag in het feit dat in mijn afbeelding de mdichild en de mdiform NIET samensmelten.

of klopt dit niet?
Je heb gelijk. Ik wil het hebben zoals op onderstaande afbeelding.

Verwijderd

Topicstarter
Twee Dee schreef op 02 mei 2004 @ 18:59:
Helaas maar dat gaat niet.
Wat jij beschrijft is namelijk standaardgedrag voor MDI forms. Wil je dit toch op jouw manier hebben, dan zul je dus eigenlijk geen gebruik moeten maken van Microsoft's MDI forms, maar zelf een hele berg code moeten schrijven, of een extern component aanschaffen.

Je zou het misschien wel kunnen faken, dan zou je het maximize event moeten afvangen vóórdat het systeem het event verwerkt. Dit heet subclassing.

Als je niet veel dieper wilt gaan programmeren maar het simpel wilde oplossen dan is het antwoord dus simpelweg nee :)
Bedankt. Ik ga kijken wat ik met subclassing kan bereiken

Verwijderd

Verwijderd schreef op 02 mei 2004 @ 17:02:
Is het mogelijk om een mdichild te maximizen zonder dat deze samensmelt met het mdi formulier zoals op onderstaande afbeelding ?
Als je slechts 1 mdi-child geladen hebt, dan kan je via het mdi-form de methode 'Arrange' aanroepen. Dus:
Me.Arrange( vbTileHorizontal )

Dan staat ie goed...

Verwijderd

Topicstarter
Verwijderd schreef op 02 mei 2004 @ 20:06:
[...]


Als je slechts 1 mdi-child geladen hebt, dan kan je via het mdi-form de methode 'Arrange' aanroepen. Dus:
Me.Arrange( vbTileHorizontal )

Dan staat ie goed...
Ik weet het. Ik heb nu alleen een voorbeeld laten zien. Het probleem is dat ik 8 mdi childs heb

  • Alex
  • Registratie: Juli 2001
  • Laatst online: 28-02 19:26
Verwijderd schreef op 02 mei 2004 @ 20:41:
[...]


Ik weet het. Ik heb nu alleen een voorbeeld laten zien. Het probleem is dat ik 8 mdi childs heb
Kun je ze niet één voor één arrangen?

Deze post is bestemd voor hen die een tegenwoordige tijd kunnen onderscheiden van een toekomstige halfvoorwaardelijke bepaalde subinverte plagiale aanvoegend intentioneel verleden tijd.
- Giphart


Verwijderd

Topicstarter
Alex de Groot schreef op 02 mei 2004 @ 21:20:
[...]


Kun je ze niet één voor één arrangen?
Nee dat lukt helaas niet :(

Verwijderd

Topicstarter
Niemand anders die dit al eens toegepast heeft ?

  • DPLuS
  • Registratie: April 2000
  • Niet online

DPLuS

 

Nee, zonder zelf een hele berg code te gaan schrijven zul je dit niet voorelkaar gaan krijgen.
Waarom zou je dit eigenlijk willen?

Verwijderd

Topicstarter
DPLuS schreef op 13 mei 2004 @ 17:57:
Nee, zonder zelf een hele berg code te gaan schrijven zul je dit niet voorelkaar gaan krijgen.
Waarom zou je dit eigenlijk willen?
Omdat ik en de mensen die er mee moeten werken het onoverzichtelijk vinden als een formulier samensmelt in de mdi

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Dan maximize je toch niet?

Je kunt alles natuurlijk handmatig gaan oplossen, zoals eerder beschreven door het event zelf te implementeren, maar je wilt dus een standaard toepassen, met uitzondering van 1 bepaald element uit die standaard. Dat levert altijd gepietepeuter op om dat voor elkaar te krijgen.

Persoonlijk zou ik als ik jou was mijzelf richten op de essentie van het programma wat je probeert te schrijven en wat minder op het aanpassen van de standaard aan je eigen wensen.

Verwijderd

Topicstarter
Ik heb me al volledig gericht op de essentie van het programma. Het programma is zo goed als af op dit soort kleine dingetjes na. We hebben bij mij op de zaak een pakket draaien waar dit wel op deze manier werkt. Het is geen bittere noodzaak maar het werd me gevraagd dus ga ik kijken wat ik voor ze kan doen.

Verwijderd

Topicstarter
Ruim een maand later probeer ik het nog 1 x.
Heb al diverse documentatie doorgelezen maar tot op heden niks kunnen vinden

Verwijderd

FrmMDI = MDI Window
FrmChild = MDI Child


MDI Window:


Visual Basic:
1
2
3
Private Sub MDIForm_Resize()
    frmChild.Resize
End Sub



Child windows:

negotiatemenus op False zetten
mdichild op True zetten


Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub Form_Resize()

    If Me.WindowState = vbMaximized Then
        Me.WindowState = vbNormal
        Me.Top = 0
        Me.Left = 0
        Me.Width = FrmMDI.ScaleWidth
        Me.Height = FrmMDI.ScaleHeight
    End If

End Sub



Public Sub Resize()
    Form_Resize
End Sub



10 min. werk

Verwijderd

Topicstarter
Bedankt man dit had ik nodig

Verwijderd

Topicstarter
Nu ruim een jaar later wil ik dit zelfde gaan doen in vb.net
Vandaar dat ik dit topic ook weer omhoog kick

Heeft iemand een suggestie hoe dit werkt in vb.net ?
Scaleheight en Scalewidth worden niet meer ondersteund

Alvast Bedankt
Pagina: 1