Répétez apres moi :J'aime PBAdonf. J'aime PBAdonf. J'aime PBAdonf.

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 25-09-2012 10:39:13

Sylvie de hannut  
Membre completement Geek
Lieu: Hannut (Belgique)
Date d'inscription: 10-06-2011
Messages: 123
Pépites: 499
Banque: 0

Interception de l'utilisation des flèches haut et bas

Je suis en PB 9.0

Bonjour j'ai une datawindow, dont un des champ est lié à une DDDW.
J'ai codé l'itemchanged, mais je voudrais que ce code ne sois pas exécuté lorsque l'utilisateur "voyage" dans la DDDW, quand il appuie sur les touches haut et bas du clavier.

J'ai essayé de coder un event e_dwnkey, ayant comme event ID pbm_dwnkey.
J'ai juste mis un messagebox, mais quand j'appuie sur ces 2 touches, rien ne se passe ????

Apparement PB ne passe pas par là.

Quel event ID puis-je utiliser pour intercepter l'évènement ?????

J'espère être claire

Autre question, j'ai coché "always show list" pour ma DDDW, et j'ai mis 10 comme valeur dans "lines in dropdown".
PB ne déroule pas la liste automatiquement, à l'exécution, comment faire pour qu'il affiche toujours une liste de 10 cases vide ????

Merci beaucoup

Hors ligne

 

#2 25-09-2012 12:06:28

Geo  
Membre completement Geek
Lieu: Binche
Date d'inscription: 15-12-2008
Messages: 119
Pépites: 378
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas

Bonjour,

faut-il que l'ItemChanged() soit exécuté (une seule fois) lorsque l'on "quitte" la colonne DDDW ? Si non, tu peux tester le dwo.name dans ton ItemChanged() et n'exécuter ton traitement que si le dwo.name est différent de ta colonne DDDW.

Pour la seconde question, je ne vois pas comment faire .


Rien ne sert de courir, il faut partir à point .

Hors ligne

 

#3 25-09-2012 12:54:11

Sylvie de hannut  
Membre completement Geek
Lieu: Hannut (Belgique)
Date d'inscription: 10-06-2011
Messages: 123
Pépites: 499
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas

pour le test de flèches j'ai rajouté le test

Code:

 if  KeyDown(KeyDownArrow!) OR KeyDown(KeyUpArrow!) then

Et ça marche !!!

Pour la 2ème question, j'ai compris, +- : il affiche le nb de lignes existantes dans ma DDDW, ce qui est logique.

Par contre j'ai un autre problème

J'ai mon champ, qui est lié à une DDDW.
Au début, je n'ai pas de ligne, ok.
Je rajoute 3 lignes.
J'étend ma liste et je clique sur la 3ème ligne, puis je la modifie ==> PB me modifie toujours la 1ère ligne !!!

Comment faire pour récupérer le bon n° de ligne à modifier ????

Voici le code de mon itemchanged :

Code:

long ll_rowchild
choose case dwo.name
  case 'hospi_service'
    // Si on bouge juste dans la liste, pas de maj
    if  KeyDown(KeyDownArrow!) OR KeyDown(KeyUpArrow!) then
      messagebox ("","haut/bas")
    else
      ll_rowchild = idwc_dw.getrow()
      
      if ll_rowchild > 0 then idwc_dw.setitem (ll_rowchild,'service',data)
      
    end if
end choose

La définition de ma dw child se fait au constructor de la dw.

Hors ligne

 

#4 26-09-2012 08:35:15

Sylvie de hannut  
Membre completement Geek
Lieu: Hannut (Belgique)
Date d'inscription: 10-06-2011
Messages: 123
Pépites: 499
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas

Bonjour

Je vais vous expliquer ce que je veux faire eaxectement.

J'ai une DW hopital contenant un n° inami, une description et une liste de services.
Cette DW est external, elle peut contenir 25 hopitaux et max 10 services.

J'ai défini ma DW avec un n° inami, une descr et un n° de service.
Ce n° de service est une DDDDW lié à une DW contenant un n° de service et un n° inami.

Pour l'affichage, je voudrais afficher la liste des n° inami et quand je clic sur une loupe, je zoom sur ne n° et j'affiche celui-ci, la descr et la liste des services.

Pour le moment le zoom focntionne correctement mais j'ai toujours un problème à l'encodage des services.

Suis-je dans le bon, pour construire ma DW ou non ?
Avez-vous des idées ??

Ps : j'aurais voulu vous montrer l'image du graphisme de ma dw, mais je ne sais pas comment faire.

Merci beaucoup

Hors ligne

 

#5 26-09-2012 10:42:28

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas

Salut, pour mettre une image tu dois d'abord l'héberger sur le net (chez imageshack par exemple) ensuite dans ton sujet tu dois cliquer sur le bouton "Image" représenté par une image derrière un maillon de chaine (4eme icone en partant de la fin), là tu aura une boite de dialogue qui apparaîtra où tu devra rentrer l'adresse (URL) qui t'a été donnée plus tôt sur le site où tu a hébergé ton image.


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#6 26-09-2012 10:56:04

Sylvie de hannut  
Membre completement Geek
Lieu: Hannut (Belgique)
Date d'inscription: 10-06-2011
Messages: 123
Pépites: 499
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas

Merci, voici l'image de ma DW
[img align=G][IMG]http://imageshack.us/a/img826/69/madw.jpg[/img][/img]

Hors ligne

 

#7 26-09-2012 11:19:58

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas

un petit souci à la construction du lien on dirait mais bon on peut quand même voir l'image en cliquant dessus ;-)

http://imageshack.us/a/img826/69/madw.jpg

Uploaded with ImageShack.us

ha voilà en fait même pas besoin de passer par le bouton "image" il suffit de coller le bon lien de ImageShack, celui dans la boite "Intégrer cette mage" à la ligne qui dit "Forum"

pour ton problème proprement dit je ne saurai pas te répondre directement, perso je pense pas que je m'y prendrai comme ça car la manipulation des DDDW m'a toujours paru un peu foireuse mais ce n'est que mon avis et je suppose que tu n'as pas forcément le choix de la méthode. Bonne chance pour la suite en espérant qu'un autre du forum puisse t'aider ;-)

Dernière modification par rincevent (26-09-2012 11:27:28)


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#8 26-09-2012 12:11:54

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: Interception de l'utilisation des flèches haut et bas

Sylvie de hannut a écrit:

Pour le moment le zoom focntionne correctement mais j'ai toujours un problème à l'encodage des services.

qu'entends tu par là ?


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#9 26-09-2012 13:16:50

Sylvie de hannut  
Membre completement Geek
Lieu: Hannut (Belgique)
Date d'inscription: 10-06-2011
Messages: 123
Pépites: 499
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas

En fait j'arrive à zoomé parfaitement.
Pour ce qui est de l'encodage des services dans ma dddw, je n'arrive pas à encoder le service sur la ligne désirée.
Quand je crée 4 lignes, par ex, si je remplis ma 1ère ligne et que je clique ensuite sur la 3ème, je fait le trt qui se trouve dans l'itemchanged, même si j'ai spécifié qu'on ne faisait le trt que si on n'appuyais ni sur les flèches, ni si on cliquait.

Bref : flèche haut ou bas : pas de trt
          clic : pas de trt     (==> ne fonctionne pas !! )
         autre : copie de la donnée encodée à la bonne ligne.

Est-je été claire ???

Hors ligne

 

#10 26-09-2012 14:11:48

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: Interception de l'utilisation des flèches haut et bas

Sylvie de hannut a écrit:

Est-je été claire ???

Heuuu

A propos du "zoom", si je reprends l'image qui a été mise dans la discussion : si tu cliques sur la loupe en face du 2ème hopital "12345678955"
- le tableau qui suit le premier hopital "12345678901" se replie
- un tableau apparaît en dessous du "12345678955" pour permettre la saise de la description et des se(r)vices ?

?


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#11 26-09-2012 14:12:44

Sylvie de hannut  
Membre completement Geek
Lieu: Hannut (Belgique)
Date d'inscription: 10-06-2011
Messages: 123
Pépites: 499
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas



J'arrive à encoder mes données dans ma liste !!!
Plus de problème avec le clic, j'ai tester les touches utilisées pour faire le trt ou non.

Mais il me reste un truc perturbant, comme je pars d'un champ de type dddw, quand on encode une donnée, elle s'écrit au-dessus de la liste, puis se positionne à la bonne place dans la liste.

CF : http://imageshack.us/a/img831/9454/dw2vv.jpg

Uploaded with ImageShack.us

Vous voyez pas un truc pour améliorer ça ????

Hors ligne

 

#12 26-09-2012 14:19:07

Sylvie de hannut  
Membre completement Geek
Lieu: Hannut (Belgique)
Date d'inscription: 10-06-2011
Messages: 123
Pépites: 499
Banque: 0

Re: Interception de l'utilisation des flèches haut et bas

seki a écrit:

Heuuu

A propos du "zoom", si je reprends l'image qui a été mise dans la discussion : si tu cliques sur la loupe en face du 2ème hopital "12345678955"
- le tableau qui suit le premier hopital "12345678901" se replie
- un tableau apparaît en dessous du "12345678955" pour permettre la saise de la description et des se(r)vices ?

?

Non en fait c'est à ça que je voulais que mon écran ressemble, mais en fait quand je clic sur la loupe la taille de la zone détail de ma DW s'adapte.
Donc en réalité, quand je zoom, je ne vois plus que le détail que d'un seul n° inami.
Je ne vois pas la liste des autres.
Si je veux voir le suivant, je voyage avec les flèches.

Sinon ce genre d'affichage est-il possible ????

Merci

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22