Portal > Foren > Java > Desktop-Applikationen und Grafik > JTree Farben oder Formatierungen zuweisen
Antwort
 
Themen-Optionen
Alt 08.05.2005, 23:06 Nach oben    #1
mr.no
Gast
 
Beiträge: n/a
Standard JTree Farben oder Formatierungen zuweisen

Hi,
ich benutze in einem Nachrichten System ein JTree. Nun will ich das neue nachrichten hervorgehoben werden. Also eine andere Farbe haben und vielleicht sogar Fett gedruckt sind. Leider habe ich keine ahnung wie ich das anstelle. Hat da jemand eine idee??

mfg mr.no
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 08.05.2005, 23:18 Nach oben    #2
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.480
Standard

Hallo,
also ich habe noch nie mit JTree gearbeitet, allerdings steht im entsprechenden Teil des Java-Tutorials "How To Use Trees" folgendes:
Zitat:
Note: You can specify text formatting in a tree node by putting HTML tags in the string for the node. See Using HTML in Swing Components for details.
Eventuell kann Dir das weiterhelfen?
Ein Versuch ist es eventuell wert.

Grüße Ben
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.05.2005, 10:25 Nach oben    #3
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Wesentlich sinniger wäre es, einen TreeCellRenderer zu verwenden. Das ist ziehmlich einfach, im Tutorial, dass Ben verlinkt hat, gibt es dazu auch ein Beispiel.
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.05.2005, 16:23 Nach oben    #4
mr.no
Gast
 
Beiträge: n/a
Standard

Das mit dem rendern sieht klappt. Aber irgendwie sieht es trotzdem besser aus mit verschiedenen formatierungen. Leider geht das nicht so einfach wie bei einem label oder button. Er zeigt mir die html formatierungen immer an.
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.05.2005, 16:34 Nach oben    #5
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Nochmal auf Deutsch bitte. Hast du's mit nem TreeCellRenderer versucht?
Damit geht das ganz einfach (sofern du ne Möglichkeit hast, herauszufinden, ob ein Objekt "neu" ist).
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.05.2005, 19:14 Nach oben    #6
mr.no
Gast
 
Beiträge: n/a
Standard

ja hab ich. Hat auch funktioniert.
Das mit den html geht nicht, da es kein Label oder kein button mit label ist. Die childs werden in einem DefaultMutableTreeNode erzeugt und dann an das JTree übergeben. Leider bin ich immer noch der meinung das die Farbe des Textes zu ändern immer noch schöner wäre. Hat keiner sonst noch eine idee wie ich das anstelle?? Welches object neu ist, ist kein problem rauszufinden.
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.05.2005, 20:07 Nach oben    #7
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Hast du schon setForeground im TreeCellRenderer verwendet?
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.05.2005, 20:23 Nach oben    #8
mr.no
Gast
 
Beiträge: n/a
Standard

und wie mach ist den text dicker??
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.05.2005, 21:13 Nach oben    #9
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

setFont(getFont().deriveFont(Font.BOLD));
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.05.2005, 19:54 Nach oben    #10
mr.no
Gast
 
Beiträge: n/a
Standard

hallo habe jetzt noch eine frage wie kann ich jetzt diese render eigenschaft nur auf einen bestimmten child ausführen?? Habe das problem das er mir dann alles komplet rendert.
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.05.2005, 22:11 Nach oben    #11
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Mit ner If-Abfrage.
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2005, 12:13 Nach oben    #12
mr.no
Gast
 
Beiträge: n/a
Standard

witzig.
Ich habe das Problem das der render auf alle eigenschaften im JTREE einfluss hat. also wenn ich setfont mache ändert er mir den kompleten jtree. Ich will jetzt aber nur das er mir einen bestimmten bereich ändert. Also z.B. nur einen child und nicht das komplette JTree. Hat da jemand ein beispiel wie ich das mache??
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2005, 22:04 Nach oben    #13
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Wie sieht denn dein momentaner Code aus?
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.05.2005, 00:16 Nach oben    #14
mr.no
Gast
 
Beiträge: n/a
Standard

Sieht im moment so aus:

DefaultMutableTreeNode root = new DefaultMutableTreeNode("root");
JTree jTree1 = new JTree(root);

private void jbInit() throws Exception {
this.setLayout(null);
jTree1.setBounds(new Rectangle(0, 0, 198, 66);
this.add(jTree1, null);
DefaultTreeCellRenderer render = new DefaultTreeCellRenderer();
render.setForeground(Color.green);
jTree1.setCellRenderer(render);
DefaultMutableTreeNode hauptfenster = new DefaultMutableTreeNode("Hauptfenster");
DefaultMutableTreeNode nachrichten = new DefaultMutableTreeNode("Nachrichten");
DefaultMutableTreeNode xy = new DefaultMutableTreeNode("xy");
root.add(hauptfenster);
root.add(nachrichten);
root.add(xy);
}

Jetzt will ich das nicht alles grün angezeigt wird sondern nur die Nachrichten die Farbe grün haben. XY und Hauptfenster sollen beide schwarz bleiben wie mache ich das??
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.05.2005, 09:56 Nach oben    #15
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Warum macht eigentlich niemand das, was ich ihm sage?

Schreib den CellRenderer selbst! (Am einfachsten wäre es, den neuen von DefaultTreeCellRenderer abzuleiten)
Dann kannst du prüfen, ob die Node deinen Vorstellungen entspricht...
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.05.2005, 13:49 Nach oben    #16
mr.no
Gast
 
Beiträge: n/a
Standard

und wie schreibe ich einen CellRender selber?? habe keine ahnung wie das geht. Hast du ein tutorial dazu oder ein kleines beispiel??
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.05.2005, 13:55 Nach oben    #17
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

So langsam glaube ich, dass meine Beiträge hier überlesen werden...

Zitat:
Wesentlich sinniger wäre es, einen TreeCellRenderer zu verwenden. Das ist ziehmlich einfach, im Tutorial, dass Ben verlinkt hat, gibt es dazu auch ein Beispiel.
Das war das erste Posting von mir in diesem Thread...

Klick mich

Ansonsten kann ich dir aber auch ein Beispiel fertig machen... ist aber echt nicht schwer.
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JTree wird nicht aktualisiert Waldi5001 Desktop-Applikationen und Grafik 7 08.12.2005 15:31
JTree Farbe smokie Desktop-Applikationen und Grafik 6 06.07.2005 15:14
JTree - Pfad hervorheben smokie Desktop-Applikationen und Grafik 12 03.06.2005 08:43
Daten in JTree einlesen Paule Desktop-Applikationen und Grafik 2 28.04.2005 22:51
java.awt.Image Farben ändern rjung Allgemeine Java-Programmierung 1 22.12.2004 20:58


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:58 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

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 31 32 33 34 35 36 37 38 39 40 41 42 43 44