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 :

Comment faire un Drag&Drop d'un TListBox vers un TDbCtrlGrid ?


Sujet :

Composants VCL Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    157
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2002
    Messages : 157
    Points : 84
    Points
    84
    Par défaut Comment faire un Drag&Drop d'un TListBox vers un TDbCtrlGrid ?
    Bonjour à tous,
    Comment puis faire du Drag/Drop à partir d'un ListBox1 vers un DbCtrlGrid et est-ce possible.

    Merci

  2. #2
    Membre actif Avatar de gibet_b
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 292
    Points : 296
    Points
    296
    Par défaut
    Je ne sais pas si j'ai bien compris ta question mais :

    - Tu mets la propriété DragMode de ta liste à dmAutomatic

    Et ensuite, sur l'événement onDragOver de ton DBGrid tu mets :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm1.DBGrid1DragOver(Sender, Source: TObject; X, Y: Integer;
      State: TDragState; var Accept: Boolean);
    begin
    DBGrid1.DragMode:=dmAutomatic
    end;
    Enfin dans l'événement OnDragDrop de ta DBGrid, tu ajoutes le code que tu veux éxécuter pour ajouter quelque chose dans ta base. Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    procedure TForm1.DBGrid1DragDrop(Sender, Source: TObject; X, Y: Integer);
    begin
    ADOTable.Insert;
    ADOTable.FieldByName('TOTO').AsString:='essai';
    //etc
    end;
    Alors ?
    Jean-Baptiste, vieux membre éclairé à la bougie
    -----
    www.e-jbb.net : Écriture et lecture numérique
    ---
    Citation du moment : "On abdique pas l'honneur d'être une cible" - Cyrano De Bergerac

  3. #3
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Points : 1 561
    Points
    1 561
    Par défaut
    Bonjour,

    Pour réaliser un Drag & Drop d'une listBox vers un DBControl qui se touve sur un dbCtrlGrid tu peux procéder de la manière suivante:

    On suppose que le drag & drop s'effectue d'une listBox vers un DBEdit qui se trouve sur le dbCtrlGrid (rowCount = 1).

    Paramétrage du listBox
    1) Propriété dragMode = dmAutomatic
    2) Coder de la façon suivante l'événement onEndDrag du listBox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    procedure TForm1.ListBox1EndDrag(Sender, Target: TObject; X, Y: Integer);
    begin
      //vérifier que le destinataire est un DBEdit
      if target is TDBEdit
       then 
      //vérifier qu'un item du listBox est sélectionné
      if (Sender as TListBox).ItemIndex <> -1
        then begin
               DBEdit2.Text := (Sender as TListBox).Items[(Sender as TListBox).ItemIndex];
             end;
    end;
    Paramétrage du DBEdit sur le dbCtrlGrid
    Coder de la façon suivante son événement OnDragOver
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    procedure TForm1.DBEdit2DragOver(Sender, Source: TObject; X, Y: Integer;
      State: TDragState; var Accept: Boolean);
    begin
       Accept := Source is TListBox;
    end;
    Ceci reste bien entendu une piste.
    Bon code.
    Cordialement
    Pensez à utiliser les tags dans le titre.
    Avant de poser une question reportez-vous à la FAQ Delphi
    Respectez les règles du forum.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    157
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2002
    Messages : 157
    Points : 84
    Points
    84
    Par défaut
    Merci à tous pour vos aides.

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

Discussions similaires

  1. Comment faire du drag and drop dans un Listbox
    Par jca dans le forum Codes sources à télécharger
    Réponses: 0
    Dernier message: 08/02/2013, 20h54
  2. [TListView] Comment faire du Drag&Drop ?
    Par XioN dans le forum Composants VCL
    Réponses: 6
    Dernier message: 24/10/2005, 11h30
  3. Réponses: 4
    Dernier message: 25/01/2005, 22h14
  4. Comment faire un Drag&Drop vers Windows ?
    Par Lung dans le forum Composants VCL
    Réponses: 17
    Dernier message: 21/06/2004, 13h10
  5. Comment faire un Drag&Drop sur un tableau
    Par Stef.web dans le forum Composants VCL
    Réponses: 6
    Dernier message: 11/10/2003, 13h12

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