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 :

DBGrid Saisie en cours


Sujet :

Bases de données Delphi

  1. #1
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut DBGrid Saisie en cours
    Bonsoir

    j'ai une dbgrid liée a une memorytable (kbmMemTable)

    je veux réccupérer la valeur du champs qui est en cours de saisie

    par exemple si mon champs et un string je veux réccupérer sa valeur
    pendant la saisie

    Merci

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    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 459
    Points : 24 873
    Points
    24 873
    Par défaut
    Voir les Event On*Cell, ... joué avec le TColumn ou TField Fourni par l'event ....
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    eh bien le dbgrid n'a pas d'évenement oncell**

    et le TField ne me donne pas (pour l'instant ) la valeur du champs qui est en cours de saisie

    merci

  4. #4
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2005
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 218
    Points : 311
    Points
    311
    Par défaut
    Regarde peut-être les propriétés InplaceEditor.Text ou InplaceEditor.EditText de la grille.

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    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 459
    Points : 24 873
    Points
    24 873
    Par défaut
    Bonne remarque le InplaceEditor, je l'oublie tout le temps, mais à ce qu'il me me semble il est protégé et surcharger avec TDBGridInplaceEdit, comme y fait tu accès ???

    eh bien le dbgrid n'a pas d'évenement oncell**
    Ah bon ??? Aide du TDBGrid, Page Event, Dérivés de TCustomDBGrid
    OnCellClick
    OnColEnter
    OnColExit
    Et voici Column
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Syntaxe Delphi :
     
    type TDBGridClickEvent = procedure (Column: TColumn) of object;
    et nous pouvons faire
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  6. #6
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2005
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 218
    Points : 311
    Points
    311
    Par défaut
    Bonne remarque le InplaceEditor, je l'oublie tout le temps, mais à ce qu'il me me semble il est protégé et surcharger avec TDBGridInplaceEdit, comme y fait tu accès ???
    Oui en effet, je veins de m'en apercevoir. Je ne me suis jamais posé la question car j'utilise en fait une grille dérivée de TDbGrid qui a cette propriété publique. Il doit suffir de surcharger les méthodes et tout ce qui va bien avec pour rendre cette propriété bien pratique publique. Il faudra que je regarde le code qui est fait dans la grille que j'utilise au boulot, mais ca sera la semaine prochaine si j'y pense...

  7. #7
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    Bonjour

    et bien après le test

    le TField ne me donne toujours pas la valeurs du champs en cours de saisie

    y'a pas un un moyen pour traiter la dbgrid comme une simple stringgrid
    et réccupérer le texte qui est écrit dans une cellule donnée [col, row]

    merci

  8. #8
    Membre expert
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Points : 3 204
    Points
    3 204
    Par défaut
    Bonjour,

    Si tu as un TDataSource dans le coin (normalement oui, relié a la TDBGrid), on peut imaginer travailler sur l'évènement OnDataChange.
    (non ?)

    @+
    Aux persévérants aucune route n'est interdite.
    Celui qui ne sait pas se contenter de peu ne sera jamais content de rien.
    Current Status
    Avec 40% de pollinisateurs invertébrés menacés d'extinction selon les Nations Unies, l'homme risque fort de passer de la monoculture à la mono diète...
    Faîtes quelque chose de bien avec vos petits sous: Enfants du Mekong

  9. #9
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    pareil

    je n'ai la valeur du champs que lorsque je valide (touche entrée par ex)
    et pas pendant la saisie

  10. #10
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    bonjour

    je pense avoir un début de solution

    je met un dbmemo sur ma dbgrid comme un inplaceeditor

    puis réccupérer la valeur de la propriété text dans l'évenement onchange

    reste qu'a implémenter

    a+

  11. #11
    Membre habitué Avatar de aliwassem
    Inscrit en
    Janvier 2004
    Messages
    293
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 293
    Points : 157
    Points
    157
    Par défaut


    Alors moi je recupere le numero de la ligne ou je suis avec la procedure ONCellClick avec lo code suivant

    et dans une autre procedure je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    IF Nbr > 0 then begin
    Edit1.text := MonTable.fields.field[0].asstring;
    Edit2.text := MonTable.fields.field[1].asstring;
    et ca marche bien

Discussions similaires

  1. [AC-2000] lire la saisie en cours dans un menu déroulant
    Par nico84 dans le forum IHM
    Réponses: 2
    Dernier message: 03/05/2012, 19h12
  2. Valeur de la saisie en cours dans un dbEdit
    Par Issam dans le forum Bases de données
    Réponses: 8
    Dernier message: 30/10/2008, 19h17
  3. Réponses: 4
    Dernier message: 15/10/2008, 10h58
  4. Supprimer Saisie en Cours
    Par JeanMikael dans le forum VBA Access
    Réponses: 0
    Dernier message: 20/09/2007, 11h35
  5. jdb : pouvoir corriger la saisie en cours
    Par lmhelp dans le forum Environnement de Développement Intégré (EDI)
    Réponses: 1
    Dernier message: 26/03/2007, 10h01

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