Почему JTextPane (JEditorPane) увеличивается в ширине когда я этого не хочу!
От: Amnesyac  
Дата: 29.06.12 16:07
Оценка:
Суть проблемы:
Есть JPanel. На нем расположен JScrollPane в котором расположен JTextPane (без текста).
Затем в этот JTextPane добавляется текст и он разъезжается в ширину (появляется скроллбар). Как сделать так чтобы он ни прикаких обстоятельствах не ехал по ширине. Как например JTextArea. Он едет только вниз.
Re: Почему JTextPane (JEditorPane) увеличивается в ширине когда я этого не хочу!
От: Blazkowicz Россия  
Дата: 29.06.12 16:29
Оценка:
Здравствуйте, Amnesyac, Вы писали:

A>Суть проблемы:

A>Есть JPanel. На нем расположен JScrollPane в котором расположен JTextPane (без текста).
A>Затем в этот JTextPane добавляется текст и он разъезжается в ширину (появляется скроллбар). Как сделать так чтобы он ни прикаких обстоятельствах не ехал по ширине. Как например JTextArea. Он едет только вниз.

setMaxSize пробовали? Странно что с JTextArea такого нет. С ним такая же бага, что при компановке он увеличивает каждый раз свой размер если сверху неограничить. Настоящие головняк.
Re[2]: Почему JTextPane (JEditorPane) увеличивается в ширине когда я этого не хо
От: Amnesyac  
Дата: 29.06.12 16:34
Оценка:
B>setMaxSize пробовали? Странно что с JTextArea такого нет. С ним такая же бага, что при компановке он увеличивает каждый раз свой размер если сверху неограничить. Настоящие головняк.
Забыл уточнить, что эта бага происходит только с типом text/html. И причем не всегда. Но совершенно стабильно. Не всегда потому что из 5 таких вот JScrollPane + JTextPane два нормально варпают буквы и отображают текст. А последние 3 скролят... Тобишь сам компонент JTextPane увеличивается в размере и JScrollPane отображает скролинг горизонтальный. А мне нужно чтобы скролинг был только вертикальный. А по горизонтали он точно вписывался в JScrollPane, размеры которого жестко заданы.

setMaxSize чего? Форма то плавающая. Растянули по горизонтали, ScrollPane тоже растянулся. JTextPane тоже растянулся. Точнее он растягиваться то растягивается, а вот сужаться не хочет....
Re[3]: Почему JTextPane (JEditorPane) увеличивается в ширине когда я этого не хо
От: Blazkowicz Россия  
Дата: 29.06.12 17:15
Оценка:
Здравствуйте, Amnesyac, Вы писали:

A>setMaxSize чего? Форма то плавающая. Растянули по горизонтали, ScrollPane тоже растянулся. JTextPane тоже растянулся. Точнее он растягиваться то растягивается, а вот сужаться не хочет....

JTextPane.setMaxSize/setMinSize/setPrefferedSize
LayoutManager использует эти значения для компановки. Из-за баги в реализации, текстовые компаненты увеличивают эти значения, но не уменьшают. Вам нужно разобраться в механике LayoutManager-ов в Swing
Re[4]: Почему JTextPane (JEditorPane) увеличивается в ширине когда я этого не хо
От: Amnesyac  
Дата: 29.06.12 17:41
Оценка:
Здравствуйте, Blazkowicz, Вы писали:
B>JTextPane.setMaxSize/setMinSize/setPrefferedSize
B>LayoutManager использует эти значения для компановки. Из-за баги в реализации, текстовые компаненты увеличивают эти значения, но не уменьшают. Вам нужно разобраться в механике LayoutManager-ов в Swing

В принципе понятно очем речь. Копать нужно далеко и с бутылкой водки, без нее никак. Темболее что уже пытался разбораться "раз и навсегда" с этими лэйаутами но так и не вышло.
Может направите на путь истинный, раз уж сами сталкивались с этой бедой.
Re[5]: Почему JTextPane (JEditorPane) увеличивается в ширине когда я этого не хо
От: Blazkowicz Россия  
Дата: 02.07.12 06:25
Оценка:
Здравствуйте, Amnesyac, Вы писали:

A>В принципе понятно очем речь. Копать нужно далеко и с бутылкой водки, без нее никак. Темболее что уже пытался разбораться "раз и навсегда" с этими лэйаутами но так и не вышло.

A>Может направите на путь истинный, раз уж сами сталкивались с этой бедой.
У нас баг на JTextArea. Решили вот так:
setMinimumSize(new Dimension(10, 10));
Но он спасает от части. Иногда поле может все равно разростить и надо ресайзить окно, чтобы его уменьшить.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.