IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Delphi Discussion :

Comment fermer une fenêtre et en appeler une autre ?


Sujet :

Delphi

  1. #1
    Membre confirmé Avatar de vg-matrix
    Inscrit en
    Février 2007
    Messages
    1 220
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Février 2007
    Messages : 1 220
    Points : 612
    Points
    612
    Par défaut Comment fermer une fenêtre et en appeler une autre ?
    Je developpe une application qui debute par la saisie d'un mot de passe. Je veux qu'en appuyant sur OK après la saisie d'un mot passe correcte, la fenetre du mot de passe se ferme et appelle celle de la fenetre principale, du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if edpass.text='12345' then
    begin
        ..................;//Code pour la fermeture de la fenetre du mot de passe
        form2.show;
    end;
    Merci d'avance...
    Il est difficile de retrouver ses erreurs lorsqu'on est persuadé que son code est juste...

    Groupe des développeurs ivoiriens

  2. #2
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    voila une fonction que j'utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    Procedure TMainForm.DBConnect;
    var
          aform : Tloginform;
          b : boolean;
         _Exit : Boolean;
    Begin
    _Exit := False;
    B:=true;
     
    Aform:=Tloginform.create(nil);
    try
        if aform.ShowModal= mrok then
        With dm.db Do
        Begin
            Params.Clear;
            Params.Values['user_name'] :=  aform.Useredit.text;
            Params.Values['password']   :=  aform.Passedit.Text;
     
            Try
              connected:=true;
            except
     
            ON E: EIBError do
            begin
                b:=false;
                case e.IBErrorCode of
                335544472:begin messagedlg('               Nom d''utilisateur ou mot de passe incorrect !'+#13#10+
                'Vérifiez votre nom utilisateur et votre mot de passe et réessayez à nouveau',mterror,[mbok],0);
                end;
     
                 335544721 :begin MessageDlg('          Impossible de se connecter au serveur <b> FireBird</b> !'+#13#10+ #13#10+
                'Vérifiez que le serveur est bien démarré et réessayez à nouveau',mterror,[mbok],0);
                            // Config; 
                end;
     
                335544344 : Begin
                              messagedlg('Base de données Introuvable !'+#13#10+ #13#10+
                              '<b>Chemin :</b> '+dm.DB.DatabaseName, mterror,[mbok],0);
                            //   Config;
                            end;
     
            end;
     
            end;
     
            end;
        End
        else
        _Exit := True;
    finally
       aform.free;
    end;
     
    if _Exit then Application.Terminate;
    if not b then DBConnect;
     
    end;
    tu mes ça dans le onshow de ta form principale

  3. #3
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    tu peux aussi le mettre directement dans ton dpr:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
     
    function CheckPassword: Boolean;
    begin
      Result := false;
      with TFrmPass.create do
      try
        if showmodal = mrok then
          Result := true;
      finally
        free;
      end;
    end;
     
     
    begin
      Application.Initialize;
      if CheckPassword then
      begin
        Application.CreateForm(TMainForm, MainForm);
        Application.run; 
      end;
    end;

  4. #4
    Membre habitué Avatar de kumo
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 215
    Points : 125
    Points
    125
    Par défaut
    ça depend de tes form, si ta form1 est celle du mot de passe, tu ne peux pas la fermer vu que c'est ta form principale, si tu la ferme, ton projet entier se fermera.
    Cependant maintenant si tu veux, voilà l'instruction qu'il faut utiliser pour la fermer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if edpass.text='12345' then
    begin
        form1.close;//Code pour la fermeture de la fenetre du mot de passe
        form2.show;
    end;
    Mais bon comme je te l'ai dis, si tu fais ça, ton projet se fermera completement car ta form1 est la form principale
    Voici les meilleurs sources du monde:
    Les tutos- La F.A.Q
    et aussi
    Google...si si c'est bien essaye....c'est satisfait ou satisfait

    lisez les règles et n'oubliez pas le

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 549
    Points : 25 119
    Points
    25 119
    Par défaut
    Sujet déjà présent sur le forum, pensez à la recherche comme
    "Fermeture de Form2 aprés l'activation de la Form1"
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2008
    Messages : 64
    Points : 72
    Points
    72
    Par défaut Cacher une fenêtre en Delphi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    ShowWindow(Handle,0);
    end;

  7. #7
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut
    ou tu fais disparaitre la form1

    form1.visible := false;
    form2.show;

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 31/10/2012, 16h01
  2. Réponses: 3
    Dernier message: 10/05/2012, 14h35
  3. [C#] Comment appeler une fenêtre modale dans un autre thread ?
    Par Pilloutou dans le forum Windows Forms
    Réponses: 6
    Dernier message: 05/10/2006, 11h19
  4. Réponses: 6
    Dernier message: 11/05/2006, 16h00
  5. Comment détecter la perte de focus d'une fenêtre
    Par Leviathan_72 dans le forum Windows
    Réponses: 5
    Dernier message: 31/12/2005, 00h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo