Avatar billede Slettet bruger
24. juli 2007 - 17:36 Der er 11 kommentarer og
1 løsning

Flere forms synlige op samme tid?

Hej eksperter!

Hvordan gør jeg flere forms synlige på samme tid?
Jeg har prøvet af kalde Application.Run(new HvadNuFormNummerToHedder()); fra en form, men så forsvinder den bare og en instans af HvadNuFormNummerToHedder dukker op i stedet. Jeg vil gerne have begge til at være synlige på samme tid - hvordan gøres dette? Og kan jeg eventuelt gøre den første form "inaktiv" (så man ikke kan skifte fokus til den, og den nye form altid forbliver forrest), når nummer to dukker op?
Avatar billede hmortensen Nybegynder
24. juli 2007 - 17:41 #1
I Form1's constructor kan du gøre sådan her:
Form2 f = new Form2();
f.ShowDialog();

Så vil Form1 åbne Form2, og "låse" dens fokus.
Avatar billede Slettet bruger
24. juli 2007 - 20:08 #2
Daaarnke schön! Tester det lige...
Avatar billede Slettet bruger
24. juli 2007 - 20:10 #3
Hmm... Nej, så forsvinder det første vindue stadig og dukker igen først op, når f lukkes.
Avatar billede Slettet bruger
24. juli 2007 - 20:11 #4
Det virker med f.Show(), men så dukker f op bag det første vindue...
Avatar billede ieconfig Nybegynder
26. juli 2007 - 20:02 #5
prøv denne:

Form2 f = new Form2();
this.Enabled = false;
f.Visible = true;
Avatar billede Slettet bruger
27. juli 2007 - 22:44 #6
Nope, den første form er stadig øverst...
Avatar billede ieconfig Nybegynder
27. juli 2007 - 23:03 #7
Form2 f = new Form2();
f.TopMost = true;
this.Enabled = false;
f.Visible = true;
Avatar billede hmortensen Nybegynder
28. juli 2007 - 18:11 #8
Man blir åbenbart nødt til selv at kalde .Show() på caller formen, så prøv sådan her i Form1's constructor.

this.Show();
Form2 f = new Form2();
f.ShowDialog();
Avatar billede Slettet bruger
29. juli 2007 - 09:23 #9
Det virker! Tak skal I have!

this.Show();
Form2 f = new Form2();
f.ShowDialog();

- låser så også fokus på andet vindue (hvilket jeg sikkert ønsker til dette formål), men jeg fandt også hurtigt ud af, at

this.Show();
Form2 f = new Form2();
f.Show();

- lader brugeren skrifte fokus frit. Desuden gælder det, at

Form2 f = new Form2();
f.Show();
this.Show();

- lader den første form forblive øverst, indtil brugeren skifter til den nye.
Tak igen, nu kan I vist roligt smide nogle svar ;)
Avatar billede hmortensen Nybegynder
29. juli 2007 - 09:31 #10
Det var så lidt :)
Avatar billede Slettet bruger
29. juli 2007 - 09:47 #11
Hmm... Men teknisk set forsøger Windows vel så at vise en allerede synlig form?
Avatar billede Slettet bruger
30. juli 2007 - 21:06 #12
Nå, nu får du bare pointene, så jeg kan få lukket denne tråd.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester