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

Lazarus Pascal Discussion :

OpenDialog et division par zéro


Sujet :

Lazarus Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 126
    Par défaut OpenDialog et division par zéro
    M'sieurs Dames, Bonjour

    Je ne suis pas trop un habitué du forum Lazarus, je viens de commencer à utiliser ce soft. Ayant utilisé pas mal d'autres EDI (y compris Delphi), le "gros" ne m'a pas posé trop de problèmes.

    J'ai toutefois un petit soucis. Je fais une petite application d'indexation de fichiers, j'ai quasiment tout implémenté ce que je voulais comme fonctions sans trop de problèmes mais y'en a un que je n'arrive pas à résoudre. Je fais appel à vos expériences pour voir si ça vient de moi qui ne sait plus coder (bah oui, c'est possible) ou du soft.

    En effet, j'essaye de mettre un composant OpenDialog sur ma form de base, je compile, j'exécute ce composant (via une option dans un menu) et là, hop,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Project *** raised exception class 'External: SIGFPE'.
    Bon, je fais OK, je continue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Project *** raised exception class 'RunError(200)'.
    Et en gros, après, il me dit division par 0 dans un ènième message.

    Quelqu'un a déjà rencontré ce problème ? je n'en ai vu aucune trace dans mes recherches sur le net. Aurais-je oublié quelque chose ?

    Voici tout de même le code par lequel j'appelle l'OpenDialog :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
      if OpenDialog1.Execute then
      begin
        //ShowMessage(OpenDialog1.FileName);
      end;

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 46
    Par défaut OpenDialog et division par zéro
    Je suis moi aussi un débutant sur Lazarus. Je viens du monde Delphi.
    J'ai essayé ton code et je ne trouve aucun problème particulier, aucune erreur ni division par zéro. Vérifie la ligne Uses si tu as les bibliothèques nécessaires ... J'ai pris ton code et j'ai rajouté quelques lignes pour ouvrir Unti1.pas sur un TMemo et tout ce passe bien. Voici 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
     
    unit Unit1; 
     
    {$mode objfpc}{$H+}
     
    interface
     
    uses
      Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
      EditBtn, StdCtrls;
     
    type
     
      { TForm1 }
     
      TForm1 = class(TForm)
        Button1: TButton;
        Memo1: TMemo;
        OpenDialog1: TOpenDialog;
        procedure Button1Click(Sender: TObject);
      private
        { private declarations }
      public
        { public declarations }
      end; 
     
    var
      Form1: TForm1; 
     
    implementation
     
    { TForm1 }
     
    procedure TForm1.Button1Click(Sender: TObject);
    var Texte : String;
        Ligne : String;
        f : TextFile;
    begin
     if OpenDialog1.Execute then
      begin
        ShowMessage(OpenDialog1.FileName);
        Memo1.Clear;
        AssignFile(F, OpenDialog1.FileName);
        {$i-}
             Reset(F);
        {$i+}
        Texte := '';
        Repeat
           ReadLn(F, Ligne);
           Texte := Texte + Ligne + Chr(13)+Chr(10);
        Until EOF(F);
        CloseFile(F);
        Memo1.Text := Texte;
      end;
    end;

  3. #3
    Membre Expert
    Avatar de Dr.Who
    Inscrit en
    Septembre 2009
    Messages
    980
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Septembre 2009
    Messages : 980
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      if OpenDialog1.Execute then
        Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
    end;
    [ Sources et programmes de Dr.Who | FAQ Delphi | FAQ Pascal | Règlement | Contactez l'équipe ]
    Ma messagerie n'est pas la succursale du forum... merci!

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 32
    Par défaut
    Bonjour,

    Je réagis un peu tardivement, mais j'avais eu un problème similaire sur les boîtes OpenDialog et SaveDialog lors du passage de Lazarus 0.9.22 à la version 0.9.24.
    Même type de messages d'erreur sur des programmes non modifiés d'une version à l'autre. Ca s'est résolu tout seul avec l'upgrade suivant de Lazarus (0.9.26).
    Apparemment à l'époque, j'étais le seul à avoir ce soucis.

Discussions similaires

  1. Division par zéro
    Par soltani1 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 18/05/2006, 09h42
  2. [Tableaux] Pb de division par zéro...
    Par blueice dans le forum Langage
    Réponses: 8
    Dernier message: 16/12/2005, 15h52
  3. [CR][VS.NET]Division par zéro
    Par San Soussy dans le forum SDK
    Réponses: 2
    Dernier message: 31/08/2005, 14h40
  4. [CR8.5] Problème de division par zéro sur formule
    Par franck.cvitrans dans le forum Formules
    Réponses: 3
    Dernier message: 10/06/2004, 13h41
  5. probleme avec une division par zéro
    Par jcharleszoxi dans le forum Langage SQL
    Réponses: 2
    Dernier message: 26/03/2003, 18h14

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