![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Ccoder |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 188 Регистрация: 15.2.2011 Репутация: нет Всего: нет |
Здравствуйте.
Хочу спросить по следующему моменту. Трудно разобраться. Хочу сделать в JTable таблице один заголовок с JCheckBox'ом Выглядеть он должен примерно вот так ![]() а при наведении курсора вот так ![]() (используя LookAndFeel с "Windows") Значит что мне тут трудно найти. То это то место где стандартный TableHeaderRender рисует это всё дело. Насколько я себе представляю. Должно быть такое место где берётся чистая прямоугольная область, далее на неё кладёться какимто образом вот такой рисунок ![]() ![]() Далее рисуется поверх текст Ну в принципе зачем писать весь компонент. Ведь там реализовано перетягивание, изменение размера колонки и т.д. Хотелось-бы просто добавить туда checkbox Добавлено @ 09:10 Кто-нибудь понимает что там делается, как это всё дело рисуется? Это сообщение отредактировал(а) Ccoder - 13.8.2011, 09:10 |
|||
|
||||
Ccoder |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 188 Регистрация: 15.2.2011 Репутация: нет Всего: нет |
Вот такое место бы найти где рисуеться
|
|||
|
||||
Ccoder |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 188 Регистрация: 15.2.2011 Репутация: нет Всего: нет |
Слушайте может хоть кто хоть немного просветит
Значит есть cellRenderer и HeaderRenderer у которых тип класса одинаковый DefaultTableCellRenderer.java. В нём есть место где рисуются клетки
А где рисуется Header такого места нету. Если начать копать глубже, то выясняется что стандартный header на самом деле использует другой класс. Только какой? P.S. Ведь column.getHeaderRenderer() в стандартном случае null |
|||
|
||||
dorogoyIV |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1503 Регистрация: 26.3.2007 Репутация: 36 Всего: 46 |
||||
|
||||
Ccoder |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 188 Регистрация: 15.2.2011 Репутация: нет Всего: нет |
мм не. тут рисуется компонент поверх.... Добавлено @ 12:37 Мне уже просто даже ради "спортивного интереса" интересно как-же работаю классы WindowsTableHeaderUI.java BasicTableHeaderUI.java XPStyle.java вот это я хотел-бы понять Это сообщение отредактировал(а) Ccoder - 13.8.2011, 12:39 |
|||
|
||||
dorogoyIV |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1503 Регистрация: 26.3.2007 Репутация: 36 Всего: 46 |
тогда свои Renderer + Editor
|
|||
|
||||
Ccoder |
|
||||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 188 Регистрация: 15.2.2011 Репутация: нет Всего: нет |
Со своим не получается сделать подсветку при наведении курсора. Вот такая тут ситуация... Добавлено @ 13:37 Так ну я застрял сейчас на этом коде
получаю
ктонибудь понимает в этом что-нибудь? Добавлено @ 13:41 P.S. Что я тут пытаюсь сделать. Так это получить заголовок без текста. (при этом он должен рисоваться подсвеченным при наведении курсора) А после добавлять компоненты наверх : текст с JCheckbox'ом Добавлено @ 13:44 Кстати нет смысла копать так они сделаны так что-бы нельзя было напрямую обратиться к "шкуркам" (skins) Это сообщение отредактировал(а) Ccoder - 13.8.2011, 13:46 |
||||||
|
|||||||
Ccoder |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 188 Регистрация: 15.2.2011 Репутация: нет Всего: нет |
Я пересмотрел всё что было на google и на этом форуме, но так и ничего ненашел.
Буду рад увидеть хоть что-нибудь Это сообщение отредактировал(а) Ccoder - 13.8.2011, 15:51 |
|||
|
||||
Ccoder |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 188 Регистрация: 15.2.2011 Репутация: нет Всего: нет |
||||
|
||||
pathfinder |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 3.3.2010 Репутация: 7 Всего: 10 |
Отрисовка background - через дефолтный рендерер, отрисовка содержимого - через прозрачный JCheckBox.
Использование.
|
||||||
|
|||||||
Ccoder |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 188 Регистрация: 15.2.2011 Репутация: нет Всего: нет |
Как я счастлив что разобрался. (уж слишком много мучался)
Взял, попробовал код и понял Оказывается у меня тут проблема ещё + изза того что я использую
pathfinder, СПАСИБО ОГРОМНОЕ! (поставьте пожалуйста + за меня) Это сообщение отредактировал(а) Ccoder - 14.8.2011, 03:23 |
|||
|
||||
dorogoyIV |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1503 Регистрация: 26.3.2007 Репутация: 36 Всего: 46 |
||||
|
||||
dorogoyIV |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1503 Регистрация: 26.3.2007 Репутация: 36 Всего: 46 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |