Avatar billede clauscsharp Nybegynder
25. februar 2007 - 14:34 Der er 5 kommentarer og
1 løsning

Vis form med Show() og vent på svar

I en MDI applikation ønsker jeg at kunne åbne flere forme, dog ønsker jeg når formen er åbnet at blive og vente på et svar.

F.eks. ved tryk på en åbn knap på hovedformen, skal følgende ske

eks. på psedo klasse som skal kaldes ved åbn, det skal samtidigt være muligt at åbne flere forme.

class MinKlasse
{
  boolean stop = false;

  public MinKlasse()
  {
      while (! stop)
      {
          Gør noget 1
          Gør noget 2

          VisForm()

          Gør noget 3
          Gør noget 4

      }
  }

  public void VisForm()
  {
      vis en form her modeless
      vent på en event fra formen, f.eks. et tastetryk
      kan ikke bruge showmodal da den så vil blokere for andre
     
      når hændelse er indtruffet fortsæt herfra

      Gør noget 5
      Gør noget 6
  }
}


Nogle gode ideer til hvordan dette løses
Avatar billede kalp Novice
25. februar 2007 - 14:42 #1
Du får lige et eksempel.. to sek.
Avatar billede kalp Novice
25. februar 2007 - 14:43 #2
www.kalp.dk/ToForms.zip

hvis det er det du tænker på.
Avatar billede clauscsharp Nybegynder
25. februar 2007 - 14:56 #3
Ikke helt, efter kald af Show() i form1 skal eventuel kode derefter vente på at blive udført indtil f.eks. en tast er trykkes på form2. Skal i teorien opføre sig ShowDialog(), men bare tillade at man åbner flere forme.
Har selv prøvet lidt med threads men ikke fået det til at fungere, da det så fryser formene.
Forskellen på Show og ShowDialog er at ShowDialog har sin egen Message pumper og det er sikkert sådan noget som skal indbygges i en threads.
Avatar billede kalp Novice
25. februar 2007 - 15:12 #4
er det ikke nemmere bare at lave det omvendt af det jeg gjorde så?
og lade form2 kalde en metode med den kode som skal eksikveres i form et når den er færdig?
Avatar billede clauscsharp Nybegynder
25. februar 2007 - 15:23 #5
Nej ikke muligt, da det er inde i en løkke det hele foregår, så den skal vente det sted formen bliver kaldt.

  VisForm()
  Gør noget // dette kode skal afvente at VisForm returnere
Avatar billede clauscsharp Nybegynder
05. januar 2014 - 10:44 #6
Løst
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