Pas d'inquiétude, avec PBAdonf, c'est dans la poche ! ^^

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 18-07-2007 16:01:57

bdf94  
Membre Power Geek
Date d'inscription: 04-10-2006
Messages: 180
Pépites: 2,231
Banque: 0

[RESOLU] DW et drag and drop

J'ai 2 DW s'appuyant sur chacune 1 table.
Je voudrais faire un drag and drop pour inserer dans la table 2 un enregsitrement de la table 1.

Concretement, l'utilisateur voit les enregistrements dans la DW_1 s'apuyant sur table_1 et les enregistrements dans la DW_2 s'apuyant sur table_2.
L'utilisateur surligne une ligne de la DW_1 et la glisse sur la DW_2 ; ceci entraine un insert dans la table_2 à partir de la table_1 en mettant en forme les donnees.

NB : table_1 et table_2 non pas du tout la meme structure.

Dernière modification par bdf94 (20-07-2007 17:14:03)

Hors ligne

 

#2 18-07-2007 16:48:21

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 30-05-2006
Messages: 4685
Pépites: 1,025
Banque: 2,147,483,647
Site web

Re: [RESOLU] DW et drag and drop

tout d'abord, avant une reponse, ou avant de passer à de nouvelles questions,
il serait bien que tu puisses traiter tes anciens sujets... s'ils sont resolus ou non... ou si tu as trouvé ta solution, et en postant ta solution...

c'est juste une petite remarque que je fais...


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#3 19-07-2007 10:07:16

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 30-05-2006
Messages: 4685
Pépites: 1,025
Banque: 2,147,483,647
Site web

Re: [RESOLU] DW et drag and drop

tu peux mettre une image de ton ecran ?

sinon, le drag and drop, ca fonctionne bien...

il suffit apres, de recuperer la ligne selectionnée.
tu recuperes les données que tu as besoin pour l'autre dw.


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#4 20-07-2007 14:07:48

bdf94  
Membre Power Geek
Date d'inscription: 04-10-2006
Messages: 180
Pépites: 2,231
Banque: 0

Re: [RESOLU] DW et drag and drop

C'est à dire ?

Il faut utiliser les fonctions dragdrop, dragleave, ... ?

Hors ligne

 

#5 20-07-2007 14:37:48

JCZ  
Builder Power
Award: bf
Lieu: 75019 paris
Date d'inscription: 21-05-2007
Messages: 1724
Pépites: 496,453,703,213
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] DW et drag and drop

exemple : dw_select et dw_choosen
1. Mettre un Dragicon dans les dw

2. creer un event movemouse sur les 2 dw event ID = pbm_mousemove

Code: pb

If Message.WordParm = 1 Then
  this.Drag(Begin!)
End If

3. dans l'event dragdrop de dw_select

Code: pb

DragObject  ldo
DataWindow  ldw
Long      ll_row
Long       ll_l, ll_count_c
String     ls_Find

ldo = DraggedObject()
If TypeOf(ldo)=DataWindow! Then
  ldw = ldo
  If ldw = parent.dw_choosen Then
    dw_select.SetRedraw(False)
    dw_select.Reset()

    ll_row = ldw.GetSelectedRow(0)
    ldw.DeleteRow(ll_row)
    ll_count_c = ldw.RowCount()
    For ll_l = 1 To ll_count_c
      ls_Find = [b]xxxxxxxxxxxxxx[/b]
      ll_row = dw_select.Findls_Find ,1, dw_select.RowCount())
      If ll_row > 0 Then dw_select.DeleteRow(ll_row)
    Next
  dw_select.SetRedraw(True)
  End If
End If



4. dans l'event dragdrop de dw_choosen

Code: pb

DragObject  ldo
DataWindow  ldw
Long      ll_nb_ligne
Integer     total

ldo = DraggedObject()
If TypeOf(ldo)=DataWindow! Then
  ldw = ldo
  if ldw = parent.dw_select Then 
    ll_nb_ligne = ldw.GetSelectedRow(0)
    If ll_nb_ligne > 0  Then
      total = dw_choosen.RowCount( ) 
      dw_select.RowsCopy(ll_nb_ligne, ll_nb_ligne, Primary!, dw_choosen, total + 10, Primary!)
      dw_choosen.ScrollToRow(total + 1)
      ldw.DeleteRow(ll_nb_ligne)
    End If
  End If    
End If


Face à l'agression, la puissance de l'intelligence

Hors ligne

 

#6 23-08-2007 09:20:41

Melke  
L'Enigmatique Troll Taciturne
Lieu: Paris
Date d'inscription: 30-05-2007
Messages: 385
Pépites: 9,994
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] DW et drag and drop

C'est trop bon, je recherche une information, je regard, sujet déjà traité avec une explication en or

Hors ligne

 

#7 24-08-2007 14:14:09

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] DW et drag and drop

Merci pour le movemouse, ce sera mieux que sur l'événement clicked() !

... mais à quoi correspond Message.Wordparm = 1 ?

Dernière modification par abdelta (24-08-2007 14:39:09)


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

#8 24-08-2007 14:40:34

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] DW et drag and drop

est-ce ca revient à mettre ceci ?

Code: pb

 if flags = 1 ... 

La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22