15. juli 2005 - 07:51Der er
19 kommentarer og 1 løsning
Besked når en form lukkes
Jeg har en form1, hvorfra jeg åbner et antal nye form2. Jeg gemmer (i form1) alle de Handles der dannes i forbindelse med de nye form2's. Hvordan kan jeg få besked i form1, om at et af form2'erne er blevet lukket?
.. en form har to events "Closing" og "Closed" som du eventuelt kan bruge. Hook en eventhandler på "Closed" eventet når du skaber dine instanser af Form2 - så vil den eventhandler blive kaldt når den instans af Form2 lukker.
wisen: Kan du klare et enkelt tillægsspørgsmål. Hvis jeg nu har 3 versioner af Form2 kørende. Og gerne vil udføre Form2.MinFunktion() (nr. 2 åbnet) fra Form1 af. Hvordan fikser man så det.
Hvis jeg nu har åbnet Form2 3 gange. Og senere i programmet har brug for at kalde en funktion i den Form2 som jeg åbnede som nr. 2 - hvordan gør jeg så det? De hedder jo det sammen, den eneste måde jeg kan skeldne mellem de 3 Form2 - er den handle som form2 har returneret til mig i forbindelse med åbningen.
Nej - Jeg opretter en ny form2, hver gang man klikker på et emne i et datagrid. Derfor oprettes der x antal form2. Jeg gemmer dog de enkeltes handle (form2.handle).
Gemmer den handle jeg får tilbage. Så jeg senere kan bruge den til evt. at checke at samme Person ikke vises flere gange samtidigt. Dette gøres ved at benytte: [DllImport("user32.dll")] static extern int GetWindowText(int hWnd, StringBuilder text, int count); Samtidig ryder jeg op, når et form lukkes (som du forklarede tidligere)
Jeg prøver at lege lidt med det. Min sommerferie starter om nogle timer. Så hvis du ikke hører noget fra inden. Vender jeg tilbage senere med en kommentar. Tak for hjælpen!
Så lykkedes det. Jeg gemmer form2 i en arraylist - som du er inde på. Og nu har jeg helt styr på hvilke forms jeg har i luften. Endnu en gang tak for hjælpen!!!!
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.