| KGF_dll - nouvelles versions | |
|
+6papydall Marc jean_debord Minibug JP06 Klaus 10 participants |
|
Auteur | Message |
---|
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Dim 13 Mar 2022 - 12:39 | |
| Il n'y a pas de problème pour déplacer l'objet depuis la bordure jaune. C'est seulement lorsqu'on laisse le clic gauche appuyé sur l'icone directionnelle pour le déplacer que cela ne marche pas ! | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 13 Mar 2022 - 12:49 | |
| Oui, j'ai remarqué cela. Je suis en train de chercher...
Pour ce qui est des flèches, je n'ai pas de bonnes nouvelles. Quoi que je fasse, les flèches, tout comme n'importe quelle touche frappée au clavier, sont dirigées directement que l'objet à l'intérieur du designer, et je ne peux donc pas l'intercepter. Dommage. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Dim 13 Mar 2022 - 12:58 | |
| C'est pas grave pour les flèches j'ai peut être une idée...
Comme j'ai un retour du numéro d'objet sélectionné je peut activé un ON_KEY_DOWN pour les 4 flèches directionnelles. et a partir de là déplacer l'objet en question !
Je regarderai cela mais à priori ça me semble pas trop compliqué à mettre en place...
PS : mon idée ne fonctionne pas non plus. Dommage ! | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 13 Mar 2022 - 15:47 | |
| J'ai remarque la chose suivante: - tu déplaces la bordure jaune ==> l'objet encadré suit normalement - tu déplaces l'icône ==> le cadre jaune se déplace, mais pas l'objet - tu déplaces ensuite le cadre jaune; ne serait-ce que d'un pixesl, l'objet se remet dans le cadre puis respecte la grille magnégtique
Je continue de travailler dessus... | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Dim 13 Mar 2022 - 15:52 | |
| Oui c'est ça Klaus. Tu as tout a fait bien résumé la situation !
Dans l'idéal il me semble qu'il faudrait que le mouvement par l'icone soit le même que par la bordure jaune. En tout cas il me semble que c'était comme ça que ça fonctionnait avec l'ancienne version. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 13 Mar 2022 - 18:21 | |
| Oui... mais il y a un problème étrange. Regarde cette version: - Code:
-
' test_designer.bas
label change
dim res%, i%, s$, obj%, DS%, p%
dll_on "KGF.dll"
memo 10 : ' mémo à traiter memo 123 : bar_both 123 : left 123,400 : ' hide 123 : ' mémo pour les évènements on_change 123,change DS% = dll_call6("CreateDesigner",10,handle(0),handle(123),object_internal(10),1,6) res% = dll_call6("DesignerFunction",5,DS%,0,0,0,24)
end
change: off_change 123 for i%=1 to count(123) s$ = trim$(item_read$(123,i%)) if s$="" then return p% = instr(s$,",") obj% = val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") left obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") top obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") width obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) height obj%,val(s$) next i% on_change 123,change
return Si tu déplaces la bordure jaune, tu vous défiler les messages du designer qui défilent dans le mémo et qui sont traités de suite. Normal. Si tu déplaces l'icône, tu vois également les messages défiler, mais il n'y a aucune réaction. En fait, l'évènement ON_CHANGE ne se déclenche pas. Et dès qu'onn bouge à nouveau la bordure, l'évènement est déclenché et le changement pris en compte. J'ai vérifié dans la DLL: le message est bien envoyé au mémo récepteur (d'ailleurs, il ne recevrait pas les textes sinon !). C'est juste l'évènement ON_CHANGE qui est déclenché par Panoramic dans un cas et pas dans l'autre. Mystère... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 13 Mar 2022 - 19:51 | |
| Bon, tant pis. J'ai pris une décision.
Puisque le déclenchement de l'évèmenent ON_CHANGE dans Panoramic semble soumis à des conditions que je ne maitrise pas, j'ai décidé de réécrire cette partie du désigner entièrement, en m'appuyant sur le mécanisme des USER_EVENT qui marche bien.
Donc, un peu de patience - je remets l'ouvrage sur le métier. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Dim 13 Mar 2022 - 20:05 | |
| Ah Ok Klaus, c'est toi qui décide... Tu peux attendre si tu as autre chose d'urgent a faire avant, pas de problème pour moi. Bizarre cette histoire... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 1:50 | |
| KGF.dll V9.75 du 14/03/2022Nouveautés: - Designer: suppression de la notion ObjectMover, réécriture de la gestion du déplacement - conséquence: suppression définitive de l'objet RulerModules modifiés: KGF.dllLa doc est en cours de rédaction, en même temps que la doc pour TRecord qui est en cours de réalisation. J'ai remplacé la petite icône en haut à gauche par un simple carré rouge de 16x16 pixels mais ayant la même fonction. Et cette fois, tout fonctionne bien, qu'on déplace l'objet par la bordure jaune ou par le carré rouge. Voici la démo: - Code:
-
' test_designer.bas
label change
dim res%, i%, s$, obj%, DS%, p%
dll_on "KGF.dll"
memo 10 : ' mémo à traiter memo 123 : bar_both 123 : left 123,400 : ' hide 123 : ' mémo pour les évènements on_change 123,change ' dans CreateDesigner, le dernier paramètre est la largeur de la bordure jaune. ' Une largeur de 3 est un minimum si l'on veut pouvoir saisir les poignées noires. DS% = dll_call6("CreateDesigner",10,handle(0),handle(123),object_internal(10),1,3) ' l'appel suivant impose une grille magnétique de 24 pixels res% = dll_call6("DesignerFunction",5,DS%,0,0,0,24)
end
change: off_change 123 for i%=1 to count(123) s$ = trim$(item_read$(123,i%)) if s$="" then return p% = instr(s$,",") obj% = val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") left obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") top obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") width obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) height obj%,val(s$) next i% on_change 123,change
return | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 7:55 | |
| Bonjour Klaus ! Je crois que KGF n'est pas mis à jour car j'ai toujours l'icone avec les 4 flèches directionnelles. Et le déplacement ne se fait toujours pas ! | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 8:45 | |
| Désolé. C'est réparé.
L'icône de déplacement est un simple carré rouge vif entouré d'une bordure noire épaisse. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 12:32 | |
| Cette fois la maj de KGF est Ok ! Par contre les agrandissements à partir des poignées noires dans les angles sont chaotiques... Je m'explique : - J'ai mis la bordure à 6 pixels - Lors de l'appui sur la poignée en haut à gauche cela semble fonctionner. - Par contre pour les 3 autres cela ne fonctionne pas correctement. Il semble que certains déplacements ne soient pas pris en compte. Je te laisse tester... PS : Ne serai t il pas possible d'avoir des carrés toujours identiques en taille quel que soit l'épaisseur du cadre ? Cela serai beaucoup plus pratique... Je pinaille mais comme c'est le cœur du programme, j'avoue que c'est important pour le bon fonctionnement de l'ensemble ! | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 12:40 | |
| - Citation :
- - Lors de l'appui sur la poignée en haut à gauche cela semble fonctionner.
- Par contre pour les 3 autres cela ne fonctionne pas correctement. Il semble que certains déplacements ne soient pas pris en compte. Si tu mets la ligne 16 en commentaire, ça fonctionne bien pour toutes les poignées. Il y a donc un problème avec la grille magnétique en cas de changement de dimension et je vais regarder cela. - Citation :
- Ne serai t il pas possible d'avoir des carrés toujours identiques en taille quel que soit l'épaisseur du cadre ?
Cela serai beaucoup plus pratique... Oui, c'est possible. Je fais faire ça... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 12:54 | |
| Les poignées restent maintenant toujours à la même taille, quelque soit l'épaisseur de la bordure. Recharge la DLL et essaie ceci: - Code:
-
' test_designer.bas
label change
dim res%, i%, s$, obj%, DS%, p%
dll_on "KGF.dll"
memo 10 : ' mémo à traiter memo 123 : bar_both 123 : left 123,400 : ' hide 123 : ' mémo pour les évènements on_change 123,change ' dans CreateDesigner, le dernier paramètre est la largeur de la bordure jaune. ' Une largeur de 3 est un minimum si l'on veut pouvoir saisir les poignées noires. DS% = dll_call6("CreateDesigner",10,handle(0),handle(123),object_internal(10),1,3) ' l'appel suivant impose une grille magnétique de 24 pixels ' res% = dll_call6("DesignerFunction",5,DS%,0,0,0,24)
end
change: off_change 123 for i%=1 to count(123) s$ = trim$(item_read$(123,i%)) if s$="" then return p% = instr(s$,",") obj% = val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") left obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") top obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") width obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) height obj%,val(s$) next i% on_change 123,change
return Ca, c'était pour la partie "facile". Je vais maintenant regarder les changements de dimensions en rapport avec la grille magnétique... Oups... j'ai validé mon post trop tôt - l'envoi sur le site n'est pas encore terminé. Quelques minutes de patience... C'est passé. Le site est à jour maintenant. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 13:35 | |
| Merci Klaus.
Je ne peux pas tester pour le moment mais je regarde tout ça en fin d'après midi. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 19:21 | |
| Bonsoir Klaus, j'ai testé et c'est très bien comme ça ! Merci. Il ne reste plus que cette histoire de grille magnétique... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 20:45 | |
| Oui... mais ce sera un peu plus long.
Qu'est-ce que tu penses du "remplaçant" de l'icône de déplacement ? | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 21:07 | |
| - Klaus a écrit:
- Oui... mais ce sera un peu plus long.
Pas de problème. Ca m'empêche pas d'avancer dans mon programme. Et de toute façon au rythme ou je vais... - Klaus a écrit:
- Qu'est-ce que tu penses du "remplaçant" de l'icône de déplacement ?
Ben c'est un carré rouge ! j'aimais bien le flèche directionnelle. c'était explicite. Mais après c'est toi qui décide en fonction de la technique... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 14 Mar 2022 - 23:22 | |
| - Citation :
- j'aimais bien le flèche directionnelle. c'était explicite. Mais après c'est toi qui décide en fonction de la technique...
Non, je ne parlais pas de l'aspect, mais du fonctionnement, bien sûr ! A l'occasion, on retrouvera évidemment le graphisme habituel, mais je voulais juste avoir quelque chose de contionnel le plus rapidement possible. EDITVoilà - l'ancienne icône est rétablie dans son graphisme ! EDITMême mieux: dès qu'on déplace le designer, cette icône prend l'aspect de la "main qui tire". | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Mar 15 Mar 2022 - 8:02 | |
| Merci klaus. Concernant les poignées, le cadre et le déplacement c'est parfait. Et l'icone directionnelle c'est la cerise sur le gateau. Hihihi ! Tout fonctionne correctement. C'est super ! | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mar 15 Mar 2022 - 12:41 | |
| Recharge KGF.dll et refais le test. Tu verras la réaction du curseur lorsque tu tires une des poignées ou la bordure jaune... Je pense que cedla correspond maintenant à ce que l'on pourrait attendre intuitivement. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Mar 15 Mar 2022 - 12:56 | |
| Heu désolé Klaus mais je ne vois pas la différence avec la version précédente ?! Qu'est ce que tu as modifié ? PS : ah oui tu parlais de l'icone qui passe avec la main lors des déplacements ou agrandissements. C'est ça ? Oui c'est plus logique et plus conventionnel ! En tout cas c'est bien fonctionnel et facile d'utilisation. Un grand merci Klaus. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mar 15 Mar 2022 - 13:17 | |
| Oui, et je parlais aussi des flèches d'aggrandissement qui apparaissent en tirant une des poignées. La main s'actve dan sl'icône, mais le curseur se transforme en flèches d'aggrandissement sur les poignées et en main avec doigt pointé en tirant l'icône. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Mar 15 Mar 2022 - 13:35 | |
| Je regarderai tout ça ce soir car là je n'ai plus accès à l'éditeur... PS : Me voilà de retour pour regarder tout ça en détail... Eh oui effectivement tu as bien tout fait jusque dans les moindres détails. C'est super ! Mon éditeur d'objet ne va plus être à la hauteur ! | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Jeu 17 Mar 2022 - 12:51 | |
| Bonjour Klaus ! Un petit retour sur le Designer pour te dire que tout fonctionne parfaitement bien ! Je peux maintenant faire la sélection en direct sur l'objet ou depuis la liste (Treeview). et tout fonctionne de façon correcte. C'est super ! Encore merci ! | |
|
| |
Contenu sponsorisé
| Sujet: Re: KGF_dll - nouvelles versions | |
| |
|
| |
| KGF_dll - nouvelles versions | |
|