Html labely jsou uplne k prdu. Co ja se namlatil do klavesnice kdyz sem to
resil.
Videl jsem a s uspechem pouzil tohle:
public class HtmlLabel extends JLabel {
private int maxWidth = 200;
....
public Dimension getPreferredSize() {
Dimension superPreferred=super.getPreferredSize();
return new Dimension(
(int)Math.min(maxWidth,superPreferred.getWidth()),
(int)superPreferred.getHeight()
);
}
}
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4348815
Ovsem teda nic moc cistota. Rekl bych, ze je to blbe uz navrzeny, proste by
to chtelo getPrefferedWidth a getPrefferedHeight misto getPrefferedSize.
Nebo kdyby Dimension mela uvnitr Integery misto intu, ale to by melo zase
jiny podstatny nevyhody.
Takze tak.
2008/7/28 Vity <[EMAIL PROTECTED]>
> Vyska je variabilni. Zalezi na L&F a podobnych vecech. pack() se vzdycky
> diva na prefferedSize, tedy je nutne ji odhadnout (treba na zaklade long
> long textu) , pokud to pack() budete volat.
>
> -Vity
>
>
> ------------------------------
> *From:* [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] *On
> Behalf Of *Marek Scholaster
> *Sent:* Monday, July 28, 2008 5:25 PM
> *To:* Java
> *Subject:* Re: Velikost JLabel s HTML
>
> U sirky by nebyl problem, ale jak zjistim, jakou by mel mit vysku? To je
> ten problem.
>
> Vity wrote:
>
> A co takhle nastavit tomu labelu setPrefferedSize?
>
> -Vity
>
>
>
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] <[EMAIL PROTECTED]>] On Behalf Of Marek Scholaster
> Sent: Monday, July 28, 2008 5:06 PM
> To: [email protected]
> Subject: Velikost JLabel s HTML
>
> Ahoj,
> pisu dialog, ktery se sklada ze dvou casti.
> Nahore dost dlouhy text - na vice radku.
> Pod nim JPanel s nejakyma kontrolama.
>
> Ten text mam v JLabelu jako html, aby se pekne zalamoval pri zmene
> velikosti toho dialogu.
> JLabel label = new JLabel("<html>Long long text. Long long text. Long
> long text. Long long text. Long long text. Long long text. Long long
> text. Long long text. Long long text. Long long text. Long long text.
> Long long text. Long long text. Long long text. Long long text. Long
> long text. Long long text. Long long text. Long long text. Long long
> text.</html>");
>
> Pocatecni sirka dialogu by mela byt urcena sirkou toho
> JPanelu a vyska
> dopocitana, aby se vesel i ten JLabel.
>
> Zkousel jsem uz kdeco, ale po pack() je to bud roztahnute na
> celou sirku
> obrazovky (kvuli tomu JLabelu), nebo je tam z JLabelu videt jen jeden
> radek.
> Kdyz pak menim velikost dialogu mysi, tak uz je to ok. Jen to
> pocatecni
> nastaveni velikosti hapruje.
>
> Diky za nejaky hint.
> Marek
>
>
>
--
S pozdravem,
Tomas Zverina
Multimedia atelier s.r.o.
Na Dolinách 4
147 00 Praha 4
IČO: 25127071
tel.: 241 433 120
e-mail: [EMAIL PROTECTED]
http://www.m-atelier.cz/
Společnost Multimedia atelier s.r.o. je zapsána u rejstříkového soudu v
Praze, oddíl C, vložka 51961.