[Delphi] Form1 disablen als Form2 active is

Pagina: 1
Acties:

  • TheLunatic
  • Registratie: April 2001
  • Laatst online: 09-07 16:41

TheLunatic

Ouwe boxen.

Topicstarter
Ik heb een mainform, gewoon, mainform. Maar nu heb ik ook een soort van 'preferences'-scherm. Maar wat ik nu wil, is, dat als dat pref-scherm actief is, dat het mainform niet bruikbaar is. frmMain.Enabled:=False werkt niet (waarom niet?). Hoe kan ik et dan oplossen ? Ik heb al gekeken in de help maar het is zo lastig om uit te vinden waarop je moet zoeken als je niet weet hoe het heet :)

Mother, will they like this song?


  • whoami
  • Registratie: December 2000
  • Laatst online: 21:42
code:
1
PrefForm.ShowModal();

Dan kan je ook niet aan uw MainForm zolang dat PrefForm open staat/actief is.

https://fgheysels.github.io/


  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Of in je MainForm als je de pref. forum wil weergeven:
MainForm.Enabled := False;
PrefForm.Show;

En in de OnClose van je PrefForm:

MainForm.Enabled := True;

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


  • whoami
  • Registratie: December 2000
  • Laatst online: 21:42
Op maandag 29 april 2002 16:29 schreef jelmervos het volgende:
Of in je MainForm als je de pref. forum wil weergeven:
MainForm.Enabled := False;
PrefForm.Show;

En in de OnClose van je PrefForm:

MainForm.Enabled := True;
Ik vind dit geen mooie oplossingen. Op die manier kan je geen instance van uw PrefForm gebruiken in een andere form/project zonder de code te moeten aanpassen.
Het is altijd beter dat de 2 forms niets van elkaar afweten.

https://fgheysels.github.io/


  • TheLunatic
  • Registratie: April 2001
  • Laatst online: 09-07 16:41

TheLunatic

Ouwe boxen.

Topicstarter
Op maandag 29 april 2002 16:28 schreef whoami het volgende:
code:
1
PrefForm.ShowModal();

Dan kan je ook niet aan uw MainForm zolang dat PrefForm open staat/actief is.
It's so damn easy ! :) Thanks !

(k moest wel even het pref-form op invisible zetten (Visible:=False)).

Mother, will they like this song?


  • BdR
  • Registratie: Juni 2001
  • Laatst online: 03-09-2025

BdR

TV is gooder then books

gekopieerd uit projectje waar ik nu mee bezig ben
code:
1
2
3
4
5
6
7
8
9
  With TfrmSettings.Create(self) Do
  begin
    Try
    if (ShowModal = mrOk) then
      WriteIniFile(IniFilename);
    finally
    Free;
    end;
  end;

als gebruiker TfrmSettings afsluit met 'OK' (ShowModal = mrOk) dan worden de settings opgeslagen (WriteIniFile(IniFilename))

moet je wel op de TfrmSettings achter de OK knop deze code zetten:
code:
1
  ModalResult := mrOk;

en achter de CANCEL knop deze code:
code:
1
  ModalResult := mrCancel;

mijn web games -> Impossible Snake 2 :: Impossible Snake :: Snake Slider


  • TheLunatic
  • Registratie: April 2001
  • Laatst online: 09-07 16:41

TheLunatic

Ouwe boxen.

Topicstarter
Op maandag 29 april 2002 16:32 schreef whoami het volgende:

[..]

Ik vind dit geen mooie oplossingen. Op die manier kan je geen instance van uw PrefForm gebruiken in een andere form/project zonder de code te moeten aanpassen.
Het is altijd beter dat de 2 forms niets van elkaar afweten.
En daarbij, het werkte ook niet :
Op maandag 29 april 2002 16:27 schreef TheLunatic het volgende:
frmMain.Enabled:=False werkt niet (waarom niet?). Hoe kan ik et dan oplossen ?
Vaag waarom het form gewoon enabled bleef, dat wel.

Mother, will they like this song?


  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Mijn oplossing is idd iets minder, maar wou hem toch melden. Ook ik gebruik altijd de ShowModal.

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


Verwijderd

Gewoon showmodal gebruiken

form1.showmodal;
form1.release;

klaar

  • whoami
  • Registratie: December 2000
  • Laatst online: 21:42
Op maandag 29 april 2002 19:11 schreef Destruction_Dimbo het volgende:
Gewoon showmodal gebruiken

form1.showmodal;
form1.release;

klaar
In het vervolg misschien eerst het topic doorlezen ...

https://fgheysels.github.io/

Pagina: 1