Form2.show

cs_manu00 Messages postés 93 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 25 octobre 2006 - 29 avril 2003 à 00:52
docgollum Messages postés 9 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 29 avril 2003 - 29 avril 2003 à 19:24
hello,
j'ai un pépin
dans le OnCreate de ma form1 j'ai mis:

cleexiste:=registre.KeyExists(chemin+'wizard');
if cleexiste=false then
begin
form2.show;
end;

(tout ce qui concerne la base de registre est OK, c'est juste l'affichage de la form2 qui pêche)

et il se plante sur le form2.show alors que lorsque que je met un simple bouton et que je clique dessus:

procedure TForm1.Button6Click(Sender: TObject);
begin
Form2.button1.Enabled:=false;
end;

Ca affiche correctement ma form2

d'ou vient le probleme ???

Manu

4 réponses

cs_manu00 Messages postés 93 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 25 octobre 2006
29 avril 2003 à 01:02
me suis planté dans le copié collé, il faut lire:

procedure TForm1.Button6Click(Sender: TObject);
begin
Form2.show;
end;

désolé

Manu
0
docgollum Messages postés 9 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 29 avril 2003
29 avril 2003 à 09:28
le probleme peut venir du faite que tu fait dans le premier un show lors du create de la form1, alors que dans l'autre tu doit clicker sur un bouton de la form1 donc la form1 est deja creer

lors du OnFormCreate je te conseil de ne faire des modification uniquement que sur la form designe par le FormCreate, car sinon dans top cas il doit essayer de rendre visible une forme qu'il n'a pas encore creer.
Pour le bouton c'est normal que sa marche car avant que tu puisse clicker dessus il a deja creer l'autre form

je sais pas si j'ai ete bien clair sinon hesite pas a me poser plus de question ou si tu veut que je revienne sur un point particulier

:big) DoC GolluM :big)
>:) The Serial Coder >:)
0
cs_manu00 Messages postés 93 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 25 octobre 2006
29 avril 2003 à 10:17
Hello,
merci pour ta réponse.
Maintenant, j'ai mis:

if registre.Readstring(chemin,'wizard','0')='0' then
begin
Form1.Hide;
Application.CreateForm(TForm2, Form2);
end;
registre.free;

dans le Oncreate de ma form1... (et ca fonctionne)

et j'ai mis:
registre.WriteInteger(chemin,'wizard',1);
form1.Show;
form2.Close;

sur un bouton dans ma form2.
Malheureusement, quand je clique sur mon bouton, ca ferme bien la form2 mais ca n'ouvre (affiche ? ) pas la form1

Une idée ??

Manu
0
docgollum Messages postés 9 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 29 avril 2003
29 avril 2003 à 19:24
si au lieu de mettre des Hide ou des Show tu mettais :

Form1.Visible := True // ou False


c'est ce dont je me sert .. et qui je trouve es plus pratique, quoique je ne connaissai pas les Hides / Show ... mais qui doivent fonctionner sur le meme principe

:big) DoC GolluM :big)
>:) The Serial Coder >:)
0
Rejoignez-nous