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

  FORUM HardWare.fr
  Programmation

  [Java] TextArea

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Java] TextArea

n°97695
Olivier51
Posté le 07-02-2002 à 11:43:30  profilanswer
 

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.

mood
Publicité
Posté le 07-02-2002 à 11:43:30  profilanswer
 

n°97700
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 07-02-2002 à 12:00:32  profilanswer
 

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


---------------
What is popular is not always right, what is right is not always popular :D
n°97743
Cherrytree
cn=?
Posté le 07-02-2002 à 13:22:51  profilanswer
 

Il est pas content le darklord22 :D :D

n°97775
gfive
Posté le 07-02-2002 à 14:09:09  profilanswer
 

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

n°97815
AirBg
The Philosopher
Posté le 07-02-2002 à 15:33:33  profilanswer
 

gfive > ca m'intéresse de savoir comment tu as fait ca...


---------------
"There's not such a thing as a stupid question, only stupid people..."
n°97827
gfive
Posté le 07-02-2002 à 15:46:09  profilanswer
 

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

n°97829
AirBg
The Philosopher
Posté le 07-02-2002 à 15:51:30  profilanswer
 

c'est bonnard !!!! j'ai tout compris ! Intéressant ! reprend le brevet à ta boite :p


---------------
"There's not such a thing as a stupid question, only stupid people..."
n°97853
Olivier51
Posté le 07-02-2002 à 16:15:44  profilanswer
 

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 ?

n°97868
gfive
Posté le 07-02-2002 à 16:34:23  profilanswer
 

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

n°97875
gfive
Posté le 07-02-2002 à 16:38:36  profilanswer
 

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

mood
Publicité
Posté le 07-02-2002 à 16:38:36  profilanswer
 

n°97937
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 07-02-2002 à 18:44:03  profilanswer
 

Cherrytree a écrit a écrit :

Il est pas content le darklord22 :D :D  




 
moi ?  :ange:  
 
 :D  
 
 :hello:


---------------
What is popular is not always right, what is right is not always popular :D

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Java] TextArea

 

Sujets relatifs
[Java] jdk 1.4 dispo :o)[JAVA] Help: d'une machine à une autre
[JAVA] Projet de chat... mais ou ca bloque ????[Java] Expression régulière
[JAVA] Insérer le résultat d'une requete sql (ResultSet) dans 1 JTABLE[Java] TextField
[Java] - Double buffering ?[Java] question philosophique (?)
2D sous JAVA[Java] Liste des fonctions et méthodes
Plus de sujets relatifs à : [Java] TextArea


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR