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

Composants VCL Delphi Discussion :

Bug composant créé


Sujet :

Composants VCL Delphi

  1. #1
    Membre éclairé
    Avatar de OutOfRange
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 533
    Par défaut Bug composant créé
    Bonjour

    J'ai créé un nouveau composant hérité d'un TMaskEdit
    Je l'installe dans le paquet dclusr60
    Je complile le tout et je sauvegarde... tout va bien

    Je fais fichier/nouveau/application, je pose le nouveau composant sur la fiche et j'exécute... tout va bien, le compo se comporte comme prévu...

    Là où ça se gâte, c'est quand j'ajoute ce compo à une fiche d'un projet existant... il se passe des trucs bizarres

    Avec certains projets, no pb

    Avec d'autres, gros bugs
    - le code de certains événements ne s'exécute pas
    - les attributs de font sont modifiés tout seul
    - j'ai un message d'exception EReadError, la propriété xxx n'existe pas
    J'ai fait plusieurs essais successifs avec le même projet. Un coup ça marche, un coup ça déconne

    Là mon D6 perso préféré me semble avoir pris froid...

    Question : Est-ce qu'une erreur dans le code de conception du compo peut provoquer ce genre de bug ?

    Toute aide sera la bienvenue
    Merci

  2. #2
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Par défaut
    Salut

    Il fait quoi exactement ce composant? Est-ce que tu peux nous montrer son code?
    Pedro
    Aucune réponse aux sollicitations techniques par MP

    Faut pas attendre d'en avoir besoin pour s'en servir... (Lucien Stéphane)

    Les pages Source C'est bon. Mangez-en!
    Le défi Delphi
    Règles du forum - FAQ Delphi - Pensez au chtit
    Aéroclub Bastia Saint-Exupéry

  3. #3
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    ne rentrerais-t-il pas en conflit avec l'un ou l'autre des composants de ton application ?
    Vraisemblalement tu tente de manipuler ton nouveau composant comme si ils'agissait d'un autre.

    A tout hasard quel est ne nom de la classe de ton composant ? et de ton unitee ?

  4. #4
    Membre éclairé
    Avatar de OutOfRange
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 533
    Par défaut
    Salut et merci de vous pencher sur mon cas

    @Pedro
    Ce compo est une amélioration d'un TMaskEdit pour la saisie d'un nombre à virgule (programme de compta par ex)
    Mon code fait une mise en forme de la propriété text (20.5 devient 20.50) et aide la saisie (positionnement du curseur tout à gauche pour commencer la saisie, déclalage de la partie entière juste à gauche du . quand frappe de .)
    etc...

    @Clorish
    Mon compo est de la classe TMaskFloat, l'unité s'appelle donc MaskFloat.pas... là je ne saisis le sens de ta question

    Que veux-tu dire par
    Vraisemblalement tu tente de manipuler ton nouveau composant comme si ils'agissait d'un autre.

  5. #5
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    PAr exemple tu creer une unitee StdCtrls qui contient tes composants standard.
    Tu inclue cette unitee dans ton projet.

    Le probleme est que les classes Delphi (par exemple TPanel de l'unitee extCtrls) peuvent avoir besoin de l'unitee StdCtrls de Delphi.
    Or comme tu as ajouté toi meme une untiee StdCtrls, Delphi utilisera la tienne dans les unitees borland (ExtCtrls) et donc cela rentre en conflit.

    Donc si tu utlise un nom de classe, un nom d'unitee qui est identique a une des classes/unitees utilisés par Borland ... il risque d'y avoir une collision, te donc tentative d'acces a une property qui n'existe pas car il y a confusion sur les types.

    Mais c'etait une simple piste ....

  6. #6
    Membre éclairé
    Avatar de OutOfRange
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 533
    Par défaut
    Salut

    Clorish,tu m'as mis sur la voie
    En installant mon compo dans un nouveau paquet perso, il marche impec
    Il devait en effet y avoir conflit

    Merci et bonne prog

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

Discussions similaires

  1. Bug Composant sous Borland
    Par apprenti0859 dans le forum C++Builder
    Réponses: 0
    Dernier message: 27/08/2009, 10h49
  2. Bug composant TextBox avec Vista (Binding/Scrollbar)
    Par Anified dans le forum Windows Forms
    Réponses: 6
    Dernier message: 27/05/2008, 16h04
  3. [SGBD][ADO] et composants ADO.NET (bug)
    Par Harry dans le forum Delphi .NET
    Réponses: 2
    Dernier message: 25/04/2005, 09h20
  4. Réponses: 2
    Dernier message: 01/07/2004, 11h05

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