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

Delphi Discussion :

probleme d'activation de DBLookupComboBox


Sujet :

Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Points : 55
    Points
    55
    Par défaut probleme d'activation de DBLookupComboBox
    Bonjour à tous;

    j'utilise un DBLookupComboBox avec une table toute la connexion avec celle -ci est faite mais quand je compile le DBLookupComboBox est desactivé sachant que sa proprieté enabled est à true?????

    j'espere que quelqun peut me resoudre ce probleme.
    merci

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 613
    Points : 25 304
    Points
    25 304
    Par défaut
    C'est dans le forum DB normalement ça !

    Soit parce que ListSource n'est pas Open,
    Soit le DataSet associé au DataSource est en lecture seule ...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Points : 55
    Points
    55
    Par défaut
    je comprend pas listsource ???
    mais pour datasource j'ai verifié readonly est à false

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 613
    Points : 25 304
    Points
    25 304
    Par défaut
    Tu ne comprends pas ListSource avec un DBLookupComboBox ? comment comptes-tu mettre des valeurs dans la Combo ... c'est la BASE de ce composant !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Points : 55
    Points
    55
    Par défaut
    a oui excuse moi je viens de la voir je suis débutant;
    sur ListSource j'ai le nom de mon datasource est ce que cela est juste???
    merci

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Points : 55
    Points
    55
    Par défaut
    A l'aide Mr ShaiLeTroll

  7. #7
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 613
    Points : 25 304
    Points
    25 304
    Par défaut
    Il te faut 2 Tables !
    L'une pour les Données, avec la colonne qui contiendra une valeur de la liste ... c'est DataSource
    L'aute pour les Items de la Combo, c'est dans ListSource,

    Maintenant, tu devrais voir si le TDBComboBox ne te suffirait pas ?
    Tu as toujours DataSource mais les Items, sont dans une TStrings que tu peux remplir directement dans Delphi, c'est très utile si tu as une liste qui ne changera toute seule d'élément ...

    EDIT : j'ai vu ton autre sujet ... tu as 1700 lignes de données ? ou 1700 items dans la Combo ??? je pleins les utilsateurs qui devront faire défiler la liste ...

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Points : 55
    Points
    55
    Par défaut
    mais est ce que c'est possible de mettre 1700 itemes dans un combo car c'est ça qu'onn me demande.????

  9. #9
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 613
    Points : 25 304
    Points
    25 304
    Par défaut
    Tout à fait possible, c'est juste que celui qui te demande cela, ben c'est pas lui qui devra défiler la liste ... mais c'est possible ...

    tient à la Barbare, ça donne ça

    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
    ALookupCombo.DataSource := TDataSource.Create(ALookupCombo);
    ALookupCombo.DataSource.DataSet := TQuery.Create(ALookupCombo);
    with TQuery(ALookupCombo.DataSource.DataSet) do
    begin
      SQL.Text := 'Select Bidule From TableMachin';
      Open();
    end;
    ALookupCombo.ListSource.DataField := 'Bidule';
     
    ALookupCombo.ListSource := TDataSource.Create(ALookupCombo);
    ALookupCombo.ListSource.DataSet := TQuery.Create(ALookupCombo);
    with TQuery(ALookupCombo.ListSource .DataSet) do
    begin
      SQL.Text := 'Select CodeBidule, LabelBidule From TableListePossibleDeValeur';
      Open();
    end;
    ALookupCombo.ListSource.KeyField := 'CodeBidule';  
    ALookupCombo.ListSource.ListField := 'LabelBidule';

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Points : 55
    Points
    55
    Par défaut
    excuse moi est ce que le code que tu viens de me donner je lemet dans ALookupComboClick???

  11. #11
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 613
    Points : 25 304
    Points
    25 304
    Par défaut
    Non plutôt dans le Create de la Form, mais c'est un exemple, j'ai tapé cela à la volée, il doit manquer des trucs ... mais déjà comme par cela ...

    ta DB c'est quoi Paradox ? si oui, autant avoir un DataModule avec plein de TTable et de TDataSource, je sais c'est lourd, parfois risqué mais ça fonctionne ...

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Points : 55
    Points
    55
    Par défaut
    non ma base c'est SQL server 2005

  13. #13
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 613
    Points : 25 304
    Points
    25 304
    Par défaut
    Donc des TADOQuery je suppose à la place des TQuery

    mais avec les bonnes requêtes et les bonnes colonnes, le code que j'ai proposé devrait fonctionné, a ceci près comme cela (tu peux remplacer le ADOConnection par une ConnectionString)

    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
     
    procedure RemplirLookup(AConnection:TADOConnection; ALookupCombo: TDBLookupComboBox; const DataSQL, ListSQL, DataField, KeyField, ListField: string; T);
    begin
      ALookupCombo.DataSource := TDataSource.Create(ALookupCombo);
      ALookupCombo.DataSource.DataSet := TADOQuery.Create(ALookupCombo);
      with TADOQuery(ALookupCombo.DataSource.DataSet) do
      begin
        Connection := AConnection;
        SQL.Text := DataSQL;
        Open();
      end;
      ALookupCombo.DataField := DataField;
     
      ALookupCombo.ListSource := TDataSource.Create(ALookupCombo);
      ALookupCombo.ListSource.DataSet := TADOQuery.Create(ALookupCombo);
      with TADOQuery(ALookupCombo.ListSource .DataSet) do
      begin
        Connection := AConnection;
        SQL.Text := ListSQL;
        Open();
      end;
      ALookupCombo.KeyField := KeyField;  
      ALookupCombo.ListField := ListField;
    end;

Discussions similaires

  1. probleme d'activation de windows
    Par samsso2006 dans le forum Windows XP
    Réponses: 6
    Dernier message: 11/06/2007, 21h52
  2. probleme d'activation feuille
    Par lio62 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/01/2007, 11h22
  3. Probleme d'activation lors de l'installation du SP2
    Par pottiez dans le forum Windows XP
    Réponses: 10
    Dernier message: 25/09/2006, 10h55
  4. Probleme controle active X
    Par madislak dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 04/04/2006, 00h25
  5. Probleme fenêtres actives
    Par rootsl dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 28/03/2006, 14h16

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