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 :

table en mode insertion et bouton enabled = true


Sujet :

Bases de données Delphi

  1. #1
    Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 75
    Points : 59
    Points
    59
    Par défaut table en mode insertion et bouton enabled = true
    bonjour
    voici mon problème : j'ai une table (dans un DBGrid) avec un DBNavigator
    j'ai un bouton de commande et je voudrais que celui soit enabled que si la table est en mode insertion
    je ne sais pas comment faire ça ...

    mis à part le mettre à enabled = false dès le début puis si l'user clique sur modifier, le mettre à true puis le mettre à false lorsqu'il a validé, mais le pb c'est que l'user peut ne pas valider et cliquer ailleurs et alors le bouton reste avec enabled = true ...

    (c'est un bouton qui sert à inserer un élément d'un TreeView dans la table)

  2. #2
    Membre confirmé
    Avatar de Higgins
    Inscrit en
    Juillet 2002
    Messages
    520
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 520
    Points : 543
    Points
    543
    Par défaut
    Dans l'événement Onchange du dbgrid tu mets:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     bouton.enabled:=(table.state=dsInsert )
    7 fois à terre, 8 fois debout

  3. #3
    Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 75
    Points : 59
    Points
    59
    Par défaut
    heu je sais pas si c'est moi mais je n'ai pas d'évènement OnChange pour mon DBGrid

    j'ai quand même essayé le code dans l'évènement OnClick du DBNavigator mais le bouton se met enabled = false et le reste tout le temps même si je clique sur nbEdit ???

    donc en résumé je sais pas où mettre le code ...

    dans un évènement de la table reliée au DBGrid mais je ne sais pas lequel ??

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 265
    Points : 290
    Points
    290
    Par défaut
    Salut,

    Tu peux utiliser l'événement TDatasource.OnStateChange du datasource de ton DBGrid.

    @+

  5. #5
    Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 75
    Points : 59
    Points
    59
    Par défaut

    j'ai essayé les 3 évènements du datasource, ça le fait pas

    ça se met à enabled = false et ça reste à false ..

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 265
    Points : 290
    Points
    290
    Par défaut
    re,

    Datasource.OnStateChange fonctionne tres bien pour moi, je viens de tester.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.DataSource1StateChange(Sender: TObject);
    begin
      Button1.enabled := DataSource1.dataset.State = dsInsert;
    end;
    @+

  7. #7
    Membre du Club
    Femme Profil pro
    Inscrit en
    Avril 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 75
    Points : 59
    Points
    59
    Par défaut
    oui tu as raison Zatoobux et MERCI ça marche parfaitement, c'est moi qui n'ai pas réfléchi, je mettais AdoTable.dataset au lieu de DataSource.dataset (puis j'ai rajouté aussi dsEdit)
    enfin bref pour résumer : et merci

  8. #8
    Membre confirmé
    Avatar de Higgins
    Inscrit en
    Juillet 2002
    Messages
    520
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 520
    Points : 543
    Points
    543
    Par défaut
    Si c'est OK, pense au tag [resolu]
    7 fois à terre, 8 fois debout

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

Discussions similaires

  1. [MySQL] Insertion de boutons dans l'affichage de table SQL
    Par hazaki dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 28/12/2011, 10h22
  2. Table en mode insertion
    Par PadawanDuDelphi dans le forum Bases de données
    Réponses: 4
    Dernier message: 14/09/2006, 14h32
  3. Pb d'écriture intempestive dans table avec SQL insert into
    Par pete_shifter dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 10/11/2005, 11h51
  4. Mettre un DBGrid en mode insertion
    Par n1portki dans le forum Bases de données
    Réponses: 3
    Dernier message: 13/10/2005, 02h07
  5. DBGrid Enabled true/false > pb de rafraichissement
    Par Harry dans le forum Bases de données
    Réponses: 8
    Dernier message: 14/10/2004, 16h50

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