Изменить divider в JSplitPane
От: xBlackCat Россия  
Дата: 21.07.05 09:11
Оценка:
Доброго времени суток.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Rojac &mdash; Rsdn Offline JAva Client
Анонсы и обсуждение здесь
Автор: xBlackCat
Дата: 08.02.10
Re: Изменить divider в JSplitPane
От: D.A.Koryavov  
Дата: 21.07.05 09:46
Оценка:
Здравствуйте, xBlackCat, Вы писали:

BC>Доброго времени суток.


И чего менять-то будем? Размер, позицию или еще чего?
Re: Изменить divider в JSplitPane
От: xBlackCat Россия  
Дата: 21.07.05 09:58
Оценка:
Ёлки-палки. Пока редактировал сообщение — оно уже отправилось

Суть вот в чём: мне надо, чтобы разделитель схлопывался только в одну сторону (вправо, к примеру). Таким образом левый компонент всегда будет виден.
А вообще — принципе интересно почитать информацию по тому, как сделать свой разделитель, чтобы он не портил текущий стиль отображения.

Спасибо заранее за ответы.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Rojac &mdash; Rsdn Offline JAva Client
Анонсы и обсуждение здесь
Автор: xBlackCat
Дата: 08.02.10
Re[2]: Изменить divider в JSplitPane
От: Blazkowicz Россия  
Дата: 21.07.05 10:19
Оценка:
Здравствуйте, xBlackCat, Вы писали:

BC>Ёлки-палки. Пока редактировал сообщение — оно уже отправилось


BC>Суть вот в чём: мне надо, чтобы разделитель схлопывался только в одну сторону (вправо, к примеру). Таким образом левый компонент всегда будет виден.

BC>А вообще — принципе интересно почитать информацию по тому, как сделать свой разделитель, чтобы он не портил текущий стиль отображения.

Если мне не изменяет память надо непосредственно UI менять. Посмотри BasicSplitPaneUI и BasicSplitPaneDivider.

Вот. А чтобы ещё и стиль всегда с L&F совпадал это ещё много повозится придется. Хотя всё зависит от того как много тебе хочется поменять.
Re[3]: Изменить divider в JSplitPane
От: xBlackCat Россия  
Дата: 21.07.05 11:44
Оценка:
Здравствуйте, Blazkowicz, Вы писали:

B>Вот. А чтобы ещё и стиль всегда с L&F совпадал это ещё много повозится придется. Хотя всё зависит от того как много тебе хочется поменять.


Стандартно на разделителе две кнопки. А мне хотелось бы только одну кнопку посередине разделителя: вправо, когда разделитель делит панели, влево — когда разделитель прячет правую панель.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Rojac &mdash; Rsdn Offline JAva Client
Анонсы и обсуждение здесь
Автор: xBlackCat
Дата: 08.02.10
Re[4]: Изменить divider в JSplitPane
От: Blazkowicz Россия  
Дата: 21.07.05 12:14
Оценка: +1
Здравствуйте, xBlackCat, Вы писали:

BC>Стандартно на разделителе две кнопки. А мне хотелось бы только одну кнопку посередине разделителя: вправо, когда разделитель делит панели, влево — когда разделитель прячет правую панель.


Точного решения не скажу но один из возможных вариантов такой.

Берем у сплиттера UI, кастим к BasicSplitPaneUI, берем у него Divider, и устанавливаем ему новый LayoutManager. LayoutManager надо будет подписать на события SplitPane, чтобы в зависимости от положения разделителя он мог прятать кнопки.

Если такое решение будет успешным оно будет работать для всех L&F, которые используют BasicLookAndFeel к ним, кажется, относятся все стандартные L&F, кроме нового (Java 1.5) — Synth.

Если этого не достаточно, то решение будет ещё более сложным.
— Можно написать свой UI, который бы мог вытягивать свой стиль из L&F, он будет отличатся от стандартного дизайном, но будет подходить к стилям.
— Можно посмотреть большинство существующих L&F и написать решения, которые бы вносили бы в них изменения.

ИМХО, работа которую придется для этого проделать не стоит результата.
Re[5]: Изменить divider в JSplitPane
От: xBlackCat Россия  
Дата: 21.07.05 12:22
Оценка:
Здравствуйте, Blazkowicz, Вы писали:

B>ИМХО, работа которую придется для этого проделать не стоит результата.


Спасибо за информацию.
Я пока ограничился чтением положения разделителя и коррекцией, в случае чего.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Rojac &mdash; Rsdn Offline JAva Client
Анонсы и обсуждение здесь
Автор: xBlackCat
Дата: 08.02.10
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.