[Delphi] Werken met meerdere forms *

Pagina: 1
Acties:

  • Wilde
  • Registratie: December 2000
  • Niet online
Ik zit even tegen een probleempje aan in Delphi 7

Stel even een apje voor met 2 forms: form1 en form2.. form1 is active, form2 is niet zichtbaar. Nou is form 1 druk bezig in een loopje. Tijdens dit loopje komt hij iets tegen waardoor hij form2 naar boven wil toveren.

Het loopje in form1 moet nu eigenlijk stoppen(wachten) totdat de gebruiker in form2 op een knop drukt waarna form2 verdwijnt en form1 weer verder gaat..

Hoe doe je dit ?

Creatieve omschrijving he :)

Specs: 9800X3D, RTX 5090, 64GB, VR: Pimax Crystal-Light


  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10-2025
hehe ten eerste ff application.progressmessages in je loopje zetten. dan hangt je form niet (just in case you didn't know)

verder kan je zegmaar in je loopje een while statment bouwen
met daarin bijv.
Delphi:
1
while (form2.visible) do begin end;

it's that simple

This message was sent on 100% recyclable electrons.


  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

ShowModal:

code:
1
2
3
4
for x := 0 to 100 do
begin
  if x = 50 then Form2.ShowModal;
end;


En in de code van de button op Form2 wordt: ModalResult := mrOK;

[ Voor 90% gewijzigd door jelmervos op 19-06-2003 17:27 ]

"The shell stopped unexpectedly and Explorer.exe was restarted."


  • Wilde
  • Registratie: December 2000
  • Niet online
Aaaah deze 2 replies zijn goud waard :)

Thanks guys.. Ik wou zelf de form2 met form2.visible:=true tevoorschijn toveren, maar showmodal is een betere/nettere oplossing ?

Specs: 9800X3D, RTX 5090, 64GB, VR: Pimax Crystal-Light


  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Volgens mij is dat de method welke jij nodig hebt. En het scheelt je een extra lus.

"The shell stopped unexpectedly and Explorer.exe was restarted."


  • Wilde
  • Registratie: December 2000
  • Niet online
Beide oplossing zullen ongetwijfeld werken, maar de showmodal methode lijkt me iets netter... Ik heb hier de hele middag(zondag internet) op zitten zoeken.. Nu het antwoord in 5 minuten.. thanks beide !

Specs: 9800X3D, RTX 5090, 64GB, VR: Pimax Crystal-Light


  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Geen probleem, al moet ik toch nog wel zeggen dat dit behoorlijk basis hoor. Vreemd daarom dat je het niet hebt kunnen vinden.

"The shell stopped unexpectedly and Explorer.exe was restarted."


  • whoami
  • Registratie: December 2000
  • Laatst online: 01:57
Wilde schreef op 19 juni 2003 @ 17:53:
Beide oplossing zullen ongetwijfeld werken, maar de showmodal methode lijkt me iets netter... Ik heb hier de hele middag(zondag internet) op zitten zoeken.. Nu het antwoord in 5 minuten.. thanks beide !
Showmodal zorgt ervoor dat die Form Modal op het scherm wordt getoond. Dat wil dus zeggen dat je niet aan je andere form kunt zolang de modale form niet afgesloten is.

Het mooiste zou zijn dat je die verwerking die lang duurt in een aparte thread zet.

https://fgheysels.github.io/


  • Wilde
  • Registratie: December 2000
  • Niet online
Het is inderdaad nogal een basis vraag ik weet het.. Maar soms zit ik om de meest basis dingen onwijs moeilijk te doen :) Terwijl ik niet de lichtste proggies schrijf(al zeg ik het zelf)

Specs: 9800X3D, RTX 5090, 64GB, VR: Pimax Crystal-Light

Pagina: 1