Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Attributs de texte | |
| | Auteur | Message |
---|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: Attributs de texte Jeu 30 Jan 2014 - 22:33 | |
| Quelqu' un a t il une astuce pour savoir si un caractère est en gras, italic ou souligné ? | |
| | | Invité Invité
| Sujet: Re: Attributs de texte Jeu 30 Jan 2014 - 23:15 | |
| Tu oublies de préciser si il s'agit d'un objet Panoramic, ou d'un RichEdit. Si c'est pour Panoramic, tu te sers d'une variable qui suit l'état de la fonte d'un objet. Si il y a beaucoup d'objet, prends une list du genre: gras%(100) pour un max de 100 objets. Tu n'as pas d'autre choix avec Panoramic, car je doute fort que Jack accepte dans l'immédiate ( et le futur) de coder cette instruction. Moi-même j'ai un problème sur une truc tout simple qui fonctionne avec tous les basics depuis zx81 au autre basic Windows, et ça deux jours que je tourne autour pour le résoudre, et demandé par plusieurs personnes (dont moi). Mais si c'est pour RichEdit, demande à Klaus, si cela est codé. En AutoIt c'est : _GUICtrlRichEdit_GetCharAttributes. |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Jeu 30 Jan 2014 - 23:25 | |
| Merci Cosmos70, Malheureusement c' est pour un objet RichEdit. Pour Auto it je ne maitrise pas du tout ce langage mais cette fonction est très interessante...dommage que l' on est pas une instruction comme S%=is_bold(s$) ou S%=is_Italic(s$) etc... | |
| | | Invité Invité
| Sujet: Re: Attributs de texte Jeu 30 Jan 2014 - 23:50 | |
| - Citation :
- Malheureusement c' est pour un objet RichEdit.
Si tu peux prouver que cela est indispensable, que cela est utile, je ne pense pas que Klaus refusera de coder cette instruction. Je ne me souviens plus mais il me semble que la possibilité existe en Delphi. Je ne veux pas aller voir. En tout cas la majorité des instructions en AutoIt si encore une fois j'ai encore assez de mémoire, est codé en Delphi. J'ai pas été voir ton projet, moi et les téléchargement! j'y vais le moins possible. Si c'est pour coloriser une ligne basic, normalement c'est une colorisation auto, en cours d'écriture. Donc normalement ton programme au fur et à mesure de la frappe, contrôle le coloriage, et n'a pas à se préoccuper des attributs qui sont dessous, puisqu'il les reprend. Mais tu as peut-être une autre vue sur le fonctionnement. Je ne rentre pas dans les détails, je suis sur mon programme qui est bloqué pour une histoire de guillemets. J'en dis pas plus car je vais finir par foutre mon ordi en l'air, tellement ça m'énerve ce truc là. |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Attributs de texte Ven 31 Jan 2014 - 0:15 | |
| Tu veux savoir si en caractère du RichEdit est en gras ? Dis-moi exactement comment tu veux l'identifier, ce caractère. Est-ce qu'il s'agit du premier caractère du texte sélectionné (donc surligné) ? Est-ce le caractère no. n, n étant un paramètre à passer ? Ou un autre moyen d'identification ? Sache que ce n'est pas simple du tout de se déplacer dans un RichEdit, quji peut contenir bien plus que du texte ! Ce que tu demandes, ne sera faisable que dans des cas particuliers. | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Attributs de texte Ven 31 Jan 2014 - 0:17 | |
| C'est très compliqué de trouver un truc pour savoir si une font est en bold, italic ou souligné. Pour savoir si elle est en gras et sa taille, je pense que les fonctions text_width et text_height doivent permettre de trouver cela, puisqu'une police n'a pas la même taille en largeur et hauteur si elle est en gras ou non. Pour italic et souligné, je ne vois que la solution d'utiliser color_pixel_blue, green et red, mais là, bonjour l'usine à gaz!!! Sinon, bon courage Ygeronimi! | |
| | | Invité Invité
| Sujet: Re: Attributs de texte Ven 31 Jan 2014 - 0:29 | |
| Bonsoir Klaus.
Je viens de jeter un oeil rapide sur les instruction de RichEdit. Il y a une fonction: RichEditGetInformation qui est intéressante, mais il manque à mon avis une information, et qui est très importante pour faire un éditeur: c'est le n° de la ligne en cours.
Lorsqu'on connait la ligne concernée et qu'on peut transférer le contenu dans une variable, on peut la traiter. J'ai juste regardé rapidement, je ne suis pas actuellement dans ces fonctions.
L'éditeur que j'avais avec le RichEdit d'AutoIt, j'avais codé une partie en Panoramic, et pour la partie RichEdit, en AutoIt. Avec celui de ta dll, on n'a que Panoramic, et les fonctions que tu apportes. Donc la coloration ne peut se faire ici qu'en Panoramic, au contraire de ce que j'avais fait. Si on ne peut pas avoir la ligne complète, cela ne va pas être simple à première vue. |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 31 Jan 2014 - 0:30 | |
| Bon je prends l' exemple du bouton bold mais c' est valable pour tous les autres attributs ou presque.
Dans un éditeur de texte type open office par exemple
cas 1 / le curseur clignote pas de selection de texte / clic sur le bouton bold / le texte tapé à la suite est en gras cas 2 / selection d'un texte avec l' aide de la souris / clic sur le bouton bold / le texte selectionné prend l' attribut bold
maintenant le cas du couillon de ygeronimi qui tapé un texte en ne se rapellant pas que l' attribut bold est actif
cas 3/ selection du texte en gras / clic sur le bouton bold / le texte reprend l' attribut normal
mais pour ce dernier cas il faut déterminer si le texte est en gras ou pas pour que le bouton inverse l' attribut.
edit
On peut récupérer la selection de texte de la souris par : res% = dll_call2("GetSelectedRichEditText",RE%,adr(txt$)) la fonction sur l' attribut pourrait déjà se baser sur les caractères de cette sélection. | |
| | | Invité Invité
| Sujet: Re: Attributs de texte Ven 31 Jan 2014 - 0:51 | |
| Tout en réfléchissant sur mon problème, je me pose des questions sur ta façon de procéder Ygeronimi. C'est bien pour faire un éditeur que tu poses les questions?
Si c'est ainsi, tu as l'intention de sélectionner chaque mot, pour leur mettre une couleur propre, ou bien tu codes pour que la coloration soit auto ou semi-automatique? Si c'est les derniers cas, je ne comprend pas le pourquoi?
Maintenant je pose peut-être trop de question. Je ne suis pas concerné. |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Attributs de texte Ven 31 Jan 2014 - 1:17 | |
| Le code suivant ne répond certainement pas à ta demande, mais je le poste quand même, question de dire que je suis là ! - Code:
-
label clic dim i
button 10 : top 10,10 : left 10,20 : caption 10,"Bold" : on_click 10,clic button 20 : top 20,10 : left 20,120 : caption 20,"Italic" : on_click 20,clic button 30 : top 30,10 : left 30,220 : caption 30,"Underline" : on_click 30,clic
button 11 : top 11,10 : left 11,20 : caption 11,"Bold_off" : on_click 11,clic button 21 : top 21,10 : left 21,120 : caption 21,"Italic_off" : on_click 21,clic button 31 : top 31,10 : left 31,220 : caption 31,"Underline_off" : on_click 31,clic
for i = 11 to 31 step 10 : hide i : next i
memo 100 : top 100,100 : left 100,50 item_add 100,"Salut tout le monde!"
end
clic: if clicked(10) > 0 then font_bold 100 : hide 10 : show 11 if clicked(20) > 0 then font_italic 100 : hide 20 : show 21 if clicked(30) > 0 then font_underline 100 : hide 30 : show 31 if clicked(11) > 0 then font_bold_off 100 : hide 11 : show 10 if clicked(21) > 0 then font_italic_off 100 : hide 21 : show 20 if clicked(31) > 0 then font_underline_off 100 : hide 31 : show 30
return
PS : Oubliez ce code au plus vite !
Dernière édition par papydall le Ven 31 Jan 2014 - 1:18, édité 1 fois | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 31 Jan 2014 - 1:17 | |
| Les attributs peuvent pour certain cas être automatique mais l' utilisateur peut avoir envie de mettre certains mots en gras, italique souligné ou autre pour les faire ressortir du code. Je peux essayer de gérer les insertions automatiques (importation des mots clef ou sub mais pas ce que tape l' utilisateur sur son clavier. Là, je crois que ce serait trop complexe, A chaque fois que certaines touches seraient enfoncées il faudrait vérifier que le mot ne soit pas un mot clef une fonction ou autre... | |
| | | Invité Invité
| Sujet: Re: Attributs de texte Ven 31 Jan 2014 - 1:46 | |
| - Citation :
- Là, je crois que ce serait trop complexe, A chaque fois que certaines touches seraient enfoncées il faudrait vérifier
que le mot ne soit pas un mot clef une fonction ou autre... Si ça t'intéresse, je peux te mettre un code pour 'syntaxer' automatiquement une ligne de code. Si tu ne veux avoir la possibilité de faire aussi du sur mesure, alors tu mets un bouton ou autre, pour colorier en fin de ligne, et ensuite tu modifies par sélection de caractères les attributs. Ainsi tu colorises la ligne à la demande. Si tu es patient quelques jours, je te donnerais un code pour le faire. Là je colorise en html, mais tu reprends les attributs pour RichEdit. |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Attributs de texte Ven 31 Jan 2014 - 2:12 | |
| J'ai mis en place la version V2.77 de KGF.dll qui contient une nouvelle fonction permettant de connaître certains attibuts de la sélection de texte actuelle. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 31 Jan 2014 - 2:19 | |
| Super Klaus ! Je charge maintenant mais je testerai que demain...euh...tout à l' heure... J' ai les yeux qui partent en papillote. | |
| | | Invité Invité
| Sujet: Re: Attributs de texte Ven 31 Jan 2014 - 2:22 | |
| J'ai mis sur le webdaw, une partie d'une page html, juste pour voir ce que donne la colorisation auto sur ma méthode. Ce n'est pas fini, il y a des erreurs, et de la simplification dans le code html (au niveau des espaces). Les liens du dessus ne se branchent sur rien. Si c'est ce que tu veux, alors quand cela sera fini, je te donnerai la méthode. Pour moi c'est plus que l'heure. C'est COPIE, puis, programmes, puis astuces, et tu cliques sur 'sujet.html' Je suppose que cela ne fonctionnera pas directement, et qu'il faut d'abord télécharger. La vue directe je ne crois pas lorsqu'on est pas l'auteur d'un compte. Ce sont des pages de testes, les codes c'est pris par endroits pour voir le comportement. Donc ne pas s'en occuper. |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 31 Jan 2014 - 2:24 | |
| Ok Cosmos70, Je vais regarder cela de près mais demain. Moi aussi il est temps que j' aille | |
| | | Contenu sponsorisé
| Sujet: Re: Attributs de texte | |
| |
| | | | Attributs de texte | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |