Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3754 connectés 

 


Dernière réponse
Sujet : [Java] TextArea
darklord22

Cherrytree a écrit a écrit :

Il est pas content le darklord22 :D :D  




 
moi ?  :ange:  
 
 :D  
 
 :hello:


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
darklord22

Cherrytree a écrit a écrit :

Il est pas content le darklord22 :D :D  




 
moi ?  :ange:  
 
 :D  
 
 :hello:

gfive A tout hasard, je demanderais à mon patron si ça le dérange pas que je diffuse ce code....C'est vraiment pas la partie "confidentielle" du soft, et en plus, j'en ai écrit les 3/4 chez moi!! :D
gfive En AWT, j'ai peur que non!! Enfin, j'espère, pasque sinon, ça veut vraiment dire que je me serais fait chier pour pas grand chose!! :D
Olivier51 Sinon si je veux un composant qui ressemble à textarea mais où il y a seulement les couleurs qui changent (sans gras, italique, police, ...), il y en a pas un autre ?
AirBg c'est bonnard !!!! j'ai tout compris ! Intéressant ! reprend le brevet à ta boite :p
gfive bah oui, mais c pour le boulot, alors je peux pas te passer le code!!  
 
Bon, en gros, ça repose sur le même principe que du Swing : y'a une classe Document qui contient le texte, et dans lequel je fais les ajouts....C'est jamais qu'un vecteur (oui pasque java 1.1.5 oblige, pas d'arraylist et autres joyeusetés) qui contient des objets qui décrivent le texte et son format.
Ensuite, y'a une classe graphique, qui dessine le contenu du Document...En fait, elle dessine pas vraiment : elle recompose le document en fonction de ses propres attributs (taille, valeurs de scrolling, etc) pour que les différentes parties de texte soient bien rendues (retour à la ligne, etc, etc...) Popur obtenir les caractéristiques graphiques d'un bout de texte, la classe qui dessine demande à un renderer, qui lui sait dessiner le contenu du texte. (c'est lui qui va remplacer les codes de smiley par les images, nottament, et dire que la taille en pixels d'un smiley, c'est la taille de l'image, et pas la taille du texte, histoire que les lignes ne se recouvrent pas).  
Donc, la classe graphique demande au renderer de lui recomposer un vecteur de données, reformaté selon la méthode de rendering, et les caractères de la zone graphique, puis, elle parcourt ce nouveau vecteur, et dessine les lignes que lui a préparé le renderer au bon endroit.....
 
Bon, je sais, ça a l'air un peu tordu comme ça, mais ça marche, et finalement, c'est assez portable et réutilisable : on peut facilement changer de renderer, ou de modèle de document.....
 
Après, par dessus, y'a d'autres trucs, comme la possibilité de cliquer sur certaines parties de texte, mais c'est assez simple : c'est des ajouts spéciaux dans le document, que la zone graphique traite de façon particulière : elle ajoute les coordeonnées du texte qui  compose le lien dans une liste, et avec une bête gestion d'évènements de souris, hop, ça fait des liens.
 
Reste à implémenter le copier/coller, (bon, au moins le copier), et à réussir à animer plus de 6 images à la fois!!  
 
Sinon, niveau implémentation, bah, la zone graphique, c'est un canvas, avec du dessin dessus, en double buffering.
 
Dans le même genre, j'ai fait une GTable, qui ressemble à la JTable : affichage d'images, de couleurs, de booléens, et edition des valeurs)
 
Faudra que je mette une démo en ligne,n un jour!! :D
AirBg gfive > ca m'intéresse de savoir comment tu as fait ca...
gfive Darklord : Ouais, sauf s'il veut faire une applet qui ne nécessite pas le téléchargement du plugin java2....
A ce moment là, ça existe pas en standart dans l'AWT, et il faut le refaire....Je l'ai fait pour le boulot, j'arrive à afficher de toutes les couleurs, à changer la fonte, la taille, à mettres des liens cliquables, et à inclure des images au milieu du texte (reste encore à les animer, c'est la prochaine étape)...Et bon, j'ai pas mal galéré pour les problèmes de clipping, de scrolling, etc...mais ça marche, donc, on peut le faire! :D
Cherrytree Il est pas content le darklord22 :D :D
darklord22 Si tu regardais le javadoc du jdk et que tu allais dans la classe JTextArea, tu verais qu'il y a deux sous classes, JEditorPane et JTextPane.
 
C'est simple non
 
Réponse à ta question: JTextPane
 
http://java.sun.com/j2se/1.3/docs/ [...] tPane.html
Olivier51 Comment s'appelle le composant Java semblable à TextArea permettant de colorer le texte ou de le mettre en gras, en italique, ... un peu comme  une fenêtre de Chat de MIRC.

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)