| Positionnement plus ou moins ciblé dans un MEMO | |
|
|
Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Positionnement plus ou moins ciblé dans un MEMO Mer 8 Aoû 2012 - 0:08 | |
| Lorsqu'un charge un mémo avec plein de lignes, la partie affichée est la partie du bas du mémo. Pour voir le début, il faut faire défiler le mémo pour voir apparaître les lignes qui sont au-dessus. On peut le faire avec la souris ou les flèches. Mais comment le faire par programme ? Panoramic de donne aucune commande de positionnement dans un mémo. Alors, on peut utiliser l'astuce suivante: 1. insérer une ligne bidon DEVANT la ligne qu'on veut voir apparaître dans la fenêtre de visualisation du mémo 2. supprimer immédiatement cette même ligne ==> le mémo affiche une partie de son texte avec les lignes autour de la ligne ciblée ! Voici une démo de l'astuce: - Code:
-
label aller
dim i%, s$
memo 1 : top 1,40 : left 1,10 for i%=1 to 30 item_add 1,str$(i%) next i%
alpha 2 : top 2,10 : left 2,10 caption 2,"Positionner à la ligne:" edit 3 : top 3,10 : left 3,120 : width 3,40 button 4 : top 4,10 : left 4,170 caption 4,"Aller..." : on_click 4,aller
end
aller: s$ = text$(3) if numeric(s$)=0 then return i% = int(val(s$)) if i%<1 or i%>count(1) then return item_insert 1,i%,"***" item_delete 1,i% return | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mer 8 Aoû 2012 - 1:29 | |
| Pour le top du top, "set_focus 1" juste avant le return de "aller" | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Positionnement plus ou moins ciblé dans un MEMO Mer 8 Aoû 2012 - 3:50 | |
| | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Positionnement plus ou moins ciblé dans un MEMO Mer 8 Aoû 2012 - 9:01 | |
| Super astuce Klaus, bravo ! ça c'est une fonction qui manque dans Panoramic et ça ouvre des horizons.
Peut-être la voie vers des LIST synchronisés... il faut voir ça de plus près. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Positionnement plus ou moins ciblé dans un MEMO Mer 8 Aoû 2012 - 17:44 | |
| Des lists synchronisées ? Regarde mon pseudo-objet GLIST - c'est exactement ça ! | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Positionnement plus ou moins ciblé dans un MEMO Mer 8 Aoû 2012 - 23:20 | |
| Oui effectivement, c'est bien ça, mais dis-donc, c'est un sacré morceau de code !
D'ailleurs, curieusement (?), ton astuce ci-dessus marche pour un MEMO mais pas pour un LIST, dommage. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Positionnement plus ou moins ciblé dans un MEMO Mer 8 Aoû 2012 - 23:47 | |
| Oui, je me suis lâché, sur ce code ! Et non seulement les lists (même 3 ou 4...) sont synchronisées, mais on peut aussi forcer le positionnement sur une ligne particulière, on peut insérer dans une des listes et les insertions seront automatiquement faites dans les autres, etc. Pour peu qu'on veuille bien plonger dans le mode d'emploi, il y a là un outil puissant ! Et tout en Panoramic, sans DLL ! Tout comme mon pseudo-objet TAB par exemple, qui réalise un système d'onglets - un un GLIST peut être placé dans un onglet d'un objet TAB, un objet TAB peut être placé à l'intérieur d'in objet TAB, ... là encore, tout est en Panoramic. | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Positionnement plus ou moins ciblé dans un MEMO Mer 8 Aoû 2012 - 23:58 | |
| Effectivement le mode d'emploi est assez... dense, mais je crois que ça vaut le coup, et comme tu dis, tout en Panoramic !
PS je reviens sur une particularité du MEMO, si on le charge par FILE_LOAD n,f$ ou FONT_NAMES_LOAD c'est le début du fichier ou de la liste qui sont affichés dans la fenêtre, alors que si on le charge par une suite de ITEM_ADD ce sera la fin. | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Jeu 9 Aoû 2012 - 0:45 | |
| sujet "Mémo", Perso, j'ai un peu pris pour habitude ( bonne ou mauvaise, çà je ne sais pas ) de mettre un "dlist" en mémoire tampon entre le fichier *.xxx et mes objets. En début de programme je charge mes fichiers externes de base dans les "dlist" puis je travail sur ceux ci que je sauvegarde dans les fichiers après chaque opération et mes objets sont charger et mis à jours depuis les "dlist". Deux cas échappent à cette pseudo règle : - les "mémo" que je prends en considération et traite comme des "dlist" visibles - les "listes" et "combo" à item fixes dans lesquelles on n' a rien à ajouter. C'est une façon pour moi de me prévenir de certains bugs... ...mais pas tous, hélas... Edit : Si je ne me sers pas encore des astuces que Klaus a mis en ligne ( GLIST, Frame et d'autres) , c'est que je considère être encore trop juste au niveau connaissances en Panoramic et programmation en général pour les manipuler sans y mettre un souk pas possible...
Dernière édition par ygeronimi le Jeu 9 Aoû 2012 - 0:50, édité 1 fois (Raison : observation) | |
|
| |
Contenu sponsorisé
| Sujet: Re: Positionnement plus ou moins ciblé dans un MEMO | |
| |
|
| |
| Positionnement plus ou moins ciblé dans un MEMO | |
|