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

Bases de données Delphi Discussion :

Pb DBComboBox le texte disparait


Sujet :

Bases de données Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut Pb DBComboBox le texte disparait
    bonjour,

    et voici mon nouveau Pb sous delphi XE, alors que çà marche de D7 :

    je viens de remarquer que dans une fiche contenant des DBComboxBox, à l'affichage de certains enreg. 2 combobox n'affichent pas leur texte, toutefois si j'edit la base de données, ils réapparaissent dès un click sur le navigator par ex. !

    ces DBCombox sont bien reliés à datesource et datafield puisque certains enreg s'affchent bien. de plus çà marchait en D7 ?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    Pensez-vous que le pb puisse venir du fait que si le texte saisie ne se trouve pas dans les ITEMS de la comboBox ?

    En tout cas c'est la piste que j'ai trouvée.

    note: je charge les éléments de items depuis une liste d'un mémo, j'ai fait un essai en y mettant un des textes fautifs, plus de pb !!

  3. #3
    Membre éclairé

    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2010
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2010
    Messages : 297
    Points : 705
    Points
    705
    Par défaut
    un morceau de code serais le bienvenu.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    Salut,

    Ben je n'ai pas vraiment de code à donner, seulement y a t-il une peut-être une propriété qui indiquerais au DBComboBox de prendre d'accepter seulement les données des DBComboBox.Items ?

    toutefois voilà ce que j'écris à un moment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    DBCBoxTTXEng.Items.Assign(MemoDataTTX.Lines);
    DBCBoxTTXDeg.Items.Assign(MemoDataTTX.Lines);
    ensuite je ne fais que choisir ou saisir un texte dans les DBComboBox. Et je remarque que si le texte de DBComboBox se trouve dans DBComboBox.items alors pas de Pb sinon ma saisie s'affiche mal !

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    Toujours à la recherche d'une solution : voici ce que je teste :

    j'ai déposé un autre DBComboBox sur ma fiche à coté de celui qui merde, relié celui-ci aux mêmes datasource et datafield, mais sans charger les DBComboBox.items, là tout fonctionne, mais dés que je charge ma liste de choix dans DBComboBox.items le texte du DBComboBox ne s'affiche pas toujours au changement d'enreg. et ce, tant que je ne place pas dans DBComboBox.items la saisie du DBComboBox !

    j'espère que je suis clair !

  6. #6
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    Quelle est la valeur de la propriété Style des ComboBoxes posant problème ?

    Avec csDropDownList, par exemple, je dirais que ce comportement est normal si il n'y pas de concordance entre la valeur du champ et un des items.

    @+ Claudius.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    les ComboBox.style sont en csDropDown

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    Il est donc très clair que j'ai le problème seulement lorque je charge DBcomboBox.items avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DBcomboBox.items.assign(MemoDataTTX.Lines);

  9. #9
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Je n'arrive pas à reproduire ce comportement avec csDropDown.

    Citation Envoyé par Georges P Voir le message
    Il est donc très clair que j'ai le problème seulement lorque je charge DBcomboBox.items avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DBcomboBox.items.assign(MemoDataTTX.Lines);
    Je ne pense pas, à moins qu'il y ait des caractères "exotiques" dans ton Memo.

    @+

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    normalement avec csDropDown celà doit avoir un comportement correct

    je regarde si dans mon mémo tout est OK...

    merci

    Ps je suis sur le net avec une clé 3 G limitée en temps je me déconnecte un instant

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    Super tu as trouvé !

    mais il faut que je m'explique, ou que tu m'explique :

    dans mon mémo j'ai détecté que ce texte "B3_R1_S" provoque l'erreur !

    si je retire le "S" plus de problème ???

  12. #12
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Citation Envoyé par Georges P Voir le message
    si je retire le "S" plus de problème ???


    Enfin, content que tu aies résolu ton problème.

    @+

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    Merci

    Mais pourquoi ce pb !!!

  14. #14
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Un caractère de contrôle qui aurait sauté avec ce S, sinon je ne vois pas.

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    Merci de ta réponse.

    Cependant en effaçant totalement le mémo et en saisissant seulement
    B3_R1_S je reproduis le pb !!

  16. #16
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    Re !

    bon mes recherches continuent et je pense maintenant que celà n'a rien à voir tout compte fait avec ma saisie "B3_R1_S" car j'ai le cas avec d'autres saisies ! (j'avais mal analysé)

    pas facile à expliquer :

    j'ai un controlTab chargé avec des enreg. les onglets comportent le texte d'un champ de ma table.

    ma table est sur un enreg. dont le text de DBComboBox est contenu dans le DBComboBox.items. Lorsque je passe à un autre enreg. dont le texte est aussi dans DBComboBox.items alors pas de pb, mais si le texte du DBComboBox ne se trouve pas dans DBComboBox.items alors l'affichage de disparait !

    J'ai trouvé un différence entre D7 et D2011 XE dans l'untié DBCtrls.pas

    D7 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    procedure TDBComboBox.SetComboText(const Value: string);
    begin
         ... autre ligne de code
         if Style in [csDropDown, csSimple] then Text := Value;
    end;
    D2011 XE :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    procedure TDBComboBox.SetComboText(const Value: string);
    begin
        ... autre ligne de code
        if Style in [csDropDown, csSimple] then
        begin
          Text := Value;
          if Value = '' then ItemIndex := -1 else ItemIndex := Items.IndexOf(Value);
        end;
    n'y a t-il pas là un début d'explication ? sachant que mon programme en D7 fonctionne très bien ?

    d'avance merci

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    j'ai placé pour essai le DBCtrls.pas dans le dossier de mon projet pour tester une modif, à savoir le retrait de la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if Value = '' then ItemIndex := -1 else ItemIndex := Items.IndexOf(Value);
    pour un retour comme D7, et là plus de Pb !

    comment se fait-il que cette modification ait eut lieu ? et surtout que sur mon prog celà ne fonctionne pas ?

    Je vais essayer avec un autre programme essai ...

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

Discussions similaires

  1. Input Text [Le texte disparait]
    Par mourbare dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 20/08/2009, 16h32
  2. text disparait avec appendChild
    Par tishu dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/11/2007, 22h38
  3. [CSS] Mon texte ou mon image disparait sous IE.
    Par KneXtasY dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 05/12/2005, 17h59
  4. Texte qui disparait sous internet explorer.
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 14/08/2005, 02h55
  5. Réponses: 9
    Dernier message: 28/04/2004, 13h01

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