tleboukaka
Messages postés79Date d'inscriptionlundi 26 février 2007StatutMembreDernière intervention 5 mai 2010
-
27 févr. 2007 à 17:50
tleboukaka
Messages postés79Date d'inscriptionlundi 26 février 2007StatutMembreDernière intervention 5 mai 2010
-
1 mars 2007 à 17:40
Débutant en Delphi :
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
J’ai une fiche de connexion « frmCon » avec 2 boutons : btnAnnuler et btnOk
Un clic sur btnOk,
ouvre une 2e fiche « frmMenu » qui a les boutons btnQuitter et btnChangerUser
Alors depuis la fiche frmMenu, quand je clique sur btnQuitter (avec <?xml:namespace prefix st1 ns "urn:schemas-microsoft-com:office:smarttags" /??><st1:personname w:st="on" productid="la Procedure Close">la Procedure Close</st1:personname>), mon application est toujours en train de s’exécuter (Running) au lieu de s’arreter, bien que la fiche frmMenu est fermée. Je retombe à frmCon, quand dans l’evenement btnOk je supprime Hide
Pour le bouton btnChangerUser, comment faire pour que tout soit réinitialisé (tout soit fermé) et me présente frmCon à nouveau avec une possibilité de saisir un autre utilisateur...tout en quittant dejà l'ancien utilisateur. ce bouton veut dire que l'ancien utilisateur donne place au nouveau utilisateur
Comment faire pour que mon application soit arretée correctement (quitte completement Delphi) quand je la quitte avec le bouton btnQuitter de frmMenu?
ThWilliam
Messages postés418Date d'inscriptionmardi 3 janvier 2006StatutMembreDernière intervention26 novembre 20134 1 mars 2007 à 09:10
Salut.
Tu dois vérifier cela dans l'événement OnClick de ton BtnOk de frmCon.
Avant cela, tu dois, dans l'inspecteur d'objets, initialiser la propriété ModalResult de BtnOk à mrNone.
Puis tu peux faire un code du genre :
procedure TfrmCon.BtnOkClick(Sender: TObject);
begin
if not OkUser // ta fonction vérifiant le nom de l'utilisateur
then
begin
ShowMessage('Nom utilisateur inconnu');
Exit;
end;
if not OkPassWord // ta fonction vérifiant le mot de passe
then
begin
ShowMessage('Mot de passe incorrect');
Exit;
end;
ModalResult:= mrOk; // fermeture de frmCon si tout est Ok
end;
florenth
Messages postés1023Date d'inscriptiondimanche 1 août 2004StatutMembreDernière intervention17 août 20083 27 févr. 2007 à 18:36
Salut !
Une des façons les plus simples est d'appeler Application.Terminate;
sinon, tu peux appeler la procédure Close() de la fiche principale.
Pour ton autre question, tout dépend comment tu gère la connexion des utilisateurs. Avec le peu d'informations que tu nous donnes, je n'ai pas de réponse concrète à te donner.
ThWilliam
Messages postés418Date d'inscriptionmardi 3 janvier 2006StatutMembreDernière intervention26 novembre 20134 27 févr. 2007 à 18:41
Salut.
D'après ce que je comprend, "frmCon" est la fiche principale de ton programme et c'est elle qui lance "frmmenu".
Tu devrais faire l'inverse :
- fiche principale = frmMenu
- au lancement de ton programme, l'appel au showmodal de la fiche frmCon se fait dans frmMenu.
- c'est dans frmCon que tu fais le changement de User avec possibilité d'annuler, c'est-à-dire de terminer ton programme.
- tu places dans le menu de frmMenu (ou bouton) un réappel possible à frmCon.
procedure TfrmMenu.LoadFrmCon; // à déclarer dans section private de TfrmMenu
begin
frmCon.showmodal;
if frmCon.modalresult = mrCancel then Close; // bouton annuler de frmCon
// le bouton Ok de frmCon doit renvoyer modalresult = mrOk;
// regarde la propriété ModalResult de TButton
end;
procedure TfrmMenu.FormShow(Sender: TObject);
begin
LoadFrmCon;
end;
procedure TfrmMenu.BtnChangeUserClick(Sender: TObject);
begin
LoadFrmCon;
end;
procedure TfrmMenu.BtnExitClick(Sender: TObject);
begin
Close;
end;
tleboukaka
Messages postés79Date d'inscriptionlundi 26 février 2007StatutMembreDernière intervention 5 mai 2010 1 mars 2007 à 08:45
salut
Au fait je me suis rendu compte de quelque chose pour mon application qui m?embete :<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
L’application tourne comme Thierry m’a donné la façon de faire, c'est-à-dire dans frmCon quand je saisie le bon Nom Utilisateur et le bon Mot De passe
Mais malheureusement, elle continuer à s’ouvrir (la fiche frmMenu s’ouvre toujours) quand même je saisi un mauvais utilisteur et même un mot de passe erroné. Quand bien même elle affiche le msg « Utilisateur Inconnu » ou « Mot de passe invalide », la fiche frmMenu s’ouvre toujours !!!
tleboukaka
Messages postés79Date d'inscriptionlundi 26 février 2007StatutMembreDernière intervention 5 mai 2010 1 mars 2007 à 17:40
Slt
merci pour la sympathie et la volonté de vouloir m'aider à progresser
je bien essayer le code que Thierry m'a donné, je le fait d'ici 3 jours car je profite de programmer seulement pendant les heures creuse au niveau de mon service. je le fait que au Travail/job.
Merci encore, et des possible je réagirai - je vous repondrai