Avatar billede jonfogh Nybegynder
05. oktober 2004 - 13:08 Der er 3 kommentarer

Billeder i JTree

Hej

Er det muligt at indsætte billeder i et JTree. Her snakker jeg om eksempelvis thumbnails af billeder, og de er således større end et almindeligt ikon.

Ved godt at man kan sætte ikoner til venstre, men højden her er begrænset, så det begrænser formatet på billedet. Hvis man kan ændre højden på en enkelt celle, kan man dog komme uden om det problem (Kan man det?)

Ved også godt at man kan indsætte html i labelen og derved skabe billedet gennem html, men så er min erfaring at billedet reloades fra disken ved hver draw!

Hvis det er uklart, er mit spørgsmål altså, kan man indsætte billeder at størrelse ca. 165x130 i et JTree?
Avatar billede Slettet bruger
05. oktober 2004 - 14:12 #1
Du kan vel blot lave din egen implementering af TreeCellRenderer-interfacet (er i DefaultTreeCellRenderer jo en subclass af JLabel).
Derfor skal du blot sørge for at din custom TreeCellRenderer har en højde / bredde på det du ønsker. Det burde være let overkommeligt.

TreeCellRenderer-interfacet:
http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/tree/TreeCellRenderer.html
Avatar billede Slettet bruger
07. oktober 2004 - 14:22 #2
...er du kommet videre?
Avatar billede peterdelphi Nybegynder
12. februar 2005 - 16:26 #3
Ja, du kan ændre størrelsen på din celle med metoden:

setRowHeight(130);

Det vil ændret størrelsen på alle celler (Du kan IKKE ændre størrelsen på en enkel celle som du kan i en JTable). Derefter brug en TreeCellRenderer til at indsætte dit billede, som fortalt ovenfor...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester