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

Free Pascal Discussion :

Fenêtre se ferme même avec le ReadLn final


Sujet :

Free Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 4
    Par défaut Fenêtre se ferme même avec le ReadLn final
    Bonsoir,

    Ma fenêtre d'exécution se ferme, même en ajoutant un readln (tout seul, pas dans un while ou quoi que ce soit), il ne s'exécute que trop peu de temps pour lire. J'ai essayé, en faisant boucler un delay(1000) jusqu'à 10 avant la fin du programme, de faire garder la fenêtre ouverte au moins 10 secondes, mais rien n'y fait cela s'enlève tout de suite...

    Pouvez-vous m'aider ?

  2. #2
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    Citation Envoyé par Pitch56 Voir le message
    Bonsoir,

    J'ai le même problème que cheylard, sauf que moi même en ajoutant un readln ( tout seul, pas dans un while ou quoi que ce soit), il ne s'exécute que trop peu de temps pour lire. J'ai essayé en faisant boucler un delay(1000) jusqu'à 10 avant la fin du programme de faire garder la fenêtre ouverte au moins 10 secondes, mais rien n'y fait cela s'enlève tout de suite...

    Pouvez vous m'aider?
    N'as tu pas fais un read avant le readln?
    Tu peux aussi faire un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    repeat
    until keypressed;
    pour garder la fenetre.
    Il serait preferable que tu nous montre un peu de code pour qu'on sache exactement ce qui ne va pas

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 4
    Par défaut
    Bonsoir,
    même avec le repeat cela ne fonctionne pas. En fait c'est un morceau de programme que je dois incorporer dans le reste ( jeu de combat naval ( projet scolaire...)) mais que j'ai fait séparément pour le tester.
    Voila le code.

    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
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    Program testproc;
     
    uses crt;
     
    Type carte = record nom : string;
                        bat : array[1..5] of string[8];
                 end;
         tcarte = array[1..10] of carte;
     
    var j, i, chiffr, g, tempr, templ : integer; m, s: string; f: text; lettr, o: char; p: integer; d : tcarte; res: integer;
     
    Procedure cartehasard(var res: integer);
     
    var i, o: integer; s: string[5]; p: string; f: text;
     
    begin
    	assign(f,'carto.txt');
    	reset(f);
    	randomize;
    	i:=0;
    	while (not eof(f)) do
    	begin
    		read(f,s);
    		if (s = 'Carte')
    		then i:=i+1
    		else readln(f,p)
    	end;
    	res:=random(i)+1;
    	close(f);
     
    End;
     
    begin
    	assign(f,'carto.txt');
    	reset(f);
    	j:=1;
    	g:= 1;
    	cartehasard(i);
    	while (j<i) AND (not eof(f)) do
    	begin
    		readln(f,s);
    		i:=i+1;
    		while (s<>'') do
    		begin
    			readln(f,s);
    		end;
    	end;
    	readln(f, d[g].nom);
    	i:= 0;
    	while (i<5) do
    	begin
                    i:= i+1;
                    read(f,d[g].bat[i]);
    		read(f,m);
    		while (m<>'') do
    		begin
    		     read(f,o);
    		end;
    		read(f, lettr);
    		read(f,chiffr);
      end;
      writeln(d[g].nom);
      while (i>0) do
      begin
           writeln(d[g].bat[i]);
           i:=i-1;
      end;
      close(f);
      repeat
      until keypressed;
     
     
    end.
    carto.txt est assigné comme il faut sous windows, mais ici je l'avais fait comme cela pour le compiler au Pool de la fac (Solaris).

    Je précise que j'utilise Dev Pascal pour compiler et exécuter sous vista ( à défaut de linux sous la main...)...

  4. #4
    Membre chevronné

    Inscrit en
    Avril 2003
    Messages
    284
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 284
    Par défaut
    Tu as sans doute une erreur d'execution, que tu ne vois pas puisque tu lances ton programme depuis windows.

    lance une console en choisissant:
    menu vista > executer > tape cmd puis cliques sur ok

    Navigue dans cette console jusqu'au répertoire de ton projet compilé avec les commandes de navigation msDos classiques puis lance ton programme compilé.
    Tu pourras lire le message d'erreur.

  5. #5
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    La premiere chose que je remarque est que tu n'as pas encore crée le fichier carto.txt, Ce qui necessaire avant toute operation de lecture. Si le fichier existe, peux tu nous le poster? peut etre qu'avec un peu de chance j'y jetterais un oeil pour voir ce qui ne vas pas.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 4
    Par défaut
    Je ne crois pas vraiment que le problème vienne du fichier qui existe bel et bien...
    Je ne pense pas non plus que cela soit dut à une erreur d'exécution, car quand je l'exécute, je vois bien (mais pas assez longtemps pour lire) qu'il affiche quelques lignes au hasard en changeant chaque fois. Je suppose que c'est dû au compilateur mais je suis loin d'être expert...

    carto.txt:
    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
    Carte Indien1872
    porteavion A1 E1
    croiseur H3 H6
    contretorp C5 C7
    torpilleur B9 B10
    sousmarin G9 I9
     
    Carte Pacifique7856
    torpilleur E2 F2
    sousmarin B3 B5
    croiseur G3 J3
    porteavion E5 E9
    contretorp G10 I10
     
    Carte Indien795
    torpilleur B4 B5
    contretorp D4 D6
    sousmarin F4 F6
    croiseur H4 H7
    porteavion J4 J8
     
    Carte Atlantique63
    porteavion C4 G4
    sousmarin I4 I6
    contretorp B5 B7
    torpilleur C8 D8
    croiseur F8 I8

Discussions similaires

  1. [Turbo Pascal] La fenêtre d'exécution se ferme automatiquement même avec un ReadLn à la fin
    Par olivier021072 dans le forum Turbo Pascal
    Réponses: 3
    Dernier message: 21/04/2012, 16h38
  2. Réponses: 3
    Dernier message: 25/03/2009, 19h15
  3. Ma fenêtre se ferme
    Par Tiaps dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/11/2005, 17h29
  4. TForm pour plusieurs fenêtre dans une même fonction ?
    Par MaTHieU_ dans le forum C++Builder
    Réponses: 5
    Dernier message: 15/11/2005, 12h38
  5. Problèmes avec les variables final
    Par casolaro dans le forum Langage
    Réponses: 7
    Dernier message: 09/12/2004, 14h29

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