[C#] Functie uitvoeren bij maximaliseren form

Pagina: 1
Acties:

  • JordyOnrust
  • Registratie: November 2007
  • Laatst online: 10-07 13:02

JordyOnrust

Leef om te leven.

Topicstarter
Ik vroeg mij het volgende af:
Is het mogelijk dat wanneer er op de maximize wordt gedrukt, ( vierkantje naast het kruisje rechts boven ) je hier een methode aan kunt hangen. Dus dat niet alleen het scherm wordt vergroot, maar dat er tegelijk ook een andere functie wordt uitgevoerd?

Wat ik namelijk heb is het volgende:
MDI Parent
2 MDI Children.
Deze MID Children worden standaard netjes naast elkaar weergeven over de volledige oppervlakte van de parent.
Maar bij het maximaliseren ( het resizen van de MDI Parent is niet mogelijk ) moeten de grotes van de children ook worden aangepast net als de positie.

Heb al een tijdje op Msdn rond gekeken maar wordt er niet veel wijzer van.
Verder had ik de vraag al op IRC gesteld maar daar lijkt iedereen afwezig.

Als je sterft voordat je sterft, sterf je niet wanneer je sterft. Rom 6:5


  • Reptile209
  • Registratie: Juni 2001
  • Laatst online: 01:05

Reptile209

- gers -

Je kan toch gewoon de Resize-event afvangen en daar een functie in plempen die je MDI childs aanpast? Dan heb je meteen het voordeel dat het zowel bij maximize kan werken, als bij het gewoon resizen van je form.

offtopic:
Snake: :w

[ Voor 5% gewijzigd door Reptile209 op 12-11-2009 19:02 ]

Zo scherp als een voetbal!


  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Resize, ResizeBegin en ResizeEnd kunnen interessant zijn :)

Going for adventure, lots of sun and a convertible! | GMT-8


  • JordyOnrust
  • Registratie: November 2007
  • Laatst online: 10-07 13:02

JordyOnrust

Leef om te leven.

Topicstarter
Waar kan ik die functie vinden?

Ik neem toch aan dat die functie ergens al standaard instaat of moet ik die zelf maken?
http://msdn.microsoft.com...ontrol.resize(VS.71).aspx
Dit heb ik gevonden over resize event.

Als je sterft voordat je sterft, sterf je niet wanneer je sterft. Rom 6:5


  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Wat is er moeilijk aan? http://msdn.microsoft.com...ol.resize%28VS.80%29.aspx

Het is een event. Klik op je form, en dan bij properties > events > dubbelklik op Resize en hij maakt automatisch een handler aan

Going for adventure, lots of sun and a convertible! | GMT-8


  • JordyOnrust
  • Registratie: November 2007
  • Laatst online: 10-07 13:02

JordyOnrust

Leef om te leven.

Topicstarter
Ik heb het al.
Tjah ik programmeer eigenlijk nooit in C#. Probeer me er wat meer in te verdiepen en moet momenteel een opdracht maken voor school.
Maar ik ging er vanuit dat wanneer er op die miximaliseren knop wordt geklikt dat er ergens een methode wordt aangeroepen. Deze methode wou ik afvangen, maar dit werkt beetje op een andere manier maar mischien wel makkelijker.

Als je sterft voordat je sterft, sterf je niet wanneer je sterft. Rom 6:5


  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Bright010957 schreef op donderdag 12 november 2009 @ 19:11:
Ik heb het al.
Tjah ik programmeer eigenlijk nooit in C#. Probeer me er wat meer in te verdiepen en moet momenteel een opdracht maken voor school.
Maar ik ging er vanuit dat wanneer er op die miximaliseren knop wordt geklikt dat er ergens een methode wordt aangeroepen. Deze methode wou ik afvangen, maar dit werkt beetje op een andere manier maar mischien wel makkelijker.
Als het venster wordt geresized wordt het event Resize afgevuurd. Daar hang je je handler aan vast. Het werkt gelijk jij wilt ;)

Going for adventure, lots of sun and a convertible! | GMT-8


  • JordyOnrust
  • Registratie: November 2007
  • Laatst online: 10-07 13:02

JordyOnrust

Leef om te leven.

Topicstarter
Ik dacht dat ResizeBegin en ResizeEnd ook werden geactiveerd bij het maximaliseren, maar dat is niet het geval. Dus voor het maximaliseren kan ik beter gewoon resize event gebruiken dus?

Als je sterft voordat je sterft, sterf je niet wanneer je sterft. Rom 6:5


  • Hans1990
  • Registratie: Maart 2004
  • Niet online
Ik denk dat de ResizeBegin en ResizeEnd events worden afgevuurd als de gebruiker bij een niet gemaximaliseerd window de grootte gaan draggen. Bij het begin van slepen wordt ResizeBegin dan afgevuurd, en ResizeEnd bij het loslaten; tenminste dat is mijn vermoeden.

Voor maximaliseren moet je met event Resize een eind komen.

  • JordyOnrust
  • Registratie: November 2007
  • Laatst online: 10-07 13:02

JordyOnrust

Leef om te leven.

Topicstarter
@Hans1990
Je hebt gelijk. Ben eventjes aan het testen gegaan.

Als je sterft voordat je sterft, sterf je niet wanneer je sterft. Rom 6:5


Acties:
  • 0 Henk 'm!

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:01

Crazy D

I think we should take a look.

Je form heeft ook een MaximumSize property, misschien kun je daar nog wat mee? (moet hooguit opnieuw geset worden wanneer je MDIForm resized).

Exact expert nodig?


Acties:
  • 0 Henk 'm!

  • Phyxion
  • Registratie: April 2004
  • Niet online

Phyxion

_/-\o_

ClientSizeChanged?

'You like a gay cowboy and you look like a gay terrorist.' - James May


Acties:
  • 0 Henk 'm!

  • JordyOnrust
  • Registratie: November 2007
  • Laatst online: 10-07 13:02

JordyOnrust

Leef om te leven.

Topicstarter
Ik heb nu gebruik gemaakt van ResizeBegin en Resize. Dus zowel bij het maximaliseren als bij het handmatig resizen worden deze functies aangeroepen. Probleem is nu opgelost.
Tnks.

Als je sterft voordat je sterft, sterf je niet wanneer je sterft. Rom 6:5


Acties:
  • 0 Henk 'm!

  • DizzyVacation
  • Registratie: November 2006
  • Niet online
En wanneer je perse iets wilt uitvoeren bij het maximaliseren check je het windowstate property in je event handler.

C#:
1
if (this.WindowState == FormWindowState.Maximized) { }
Pagina: 1