2015-04-06 4 views
-1

Если у меня есть сетка из 9 панелей на другой панели, и я хочу, чтобы можно было щелкнуть субпанель и щелкнуть, отправьте содержимое этой панели в область «выбранная панель», как бы я пойдите об этом? (Представьте себе страницу выбора персонажа для видеоигры. Когда игрок выбирает свой символ, он показывает расширенный вид символа в области «выбрано»)Java Swing, выбирая панель

Я подумываю о методах mouseListeners для каждой подпанели и получения щелкнутого компонента но я не понимаю, как я могу скопировать этот клик-компонент в «выбранную» область.

ответ

2

Добавь свои данные в JList или single-colum JTable. Добавьте ListSelectionListener к выбранному вами компоненту. Укажите ListSelectionModel.SINGLE_SELECTION. В вашем valueChanged() обработчике ListSelectionEvent расскажет вам, какое значение было выбрано. Используйте эту информацию, чтобы заполнить поля соседней панели. Полный пример, показанный ниже, показан here.

image

+0

Большое вам спасибо, ваш ответ был очень полезным. Мой следующий шаг, однако, заключается в том, чтобы реализовать целую панель (с ее собственной графикой2d внутри нее) вместо ваших значков, но я не знаю, как это сделать или в какой части вашего кода моя панель может соответствовать – JoshM

+0

Я бы предложил мастерить с приведенным примером; вы можете задать новый вопрос, основанный на любых проблемах, с которыми вы сталкиваетесь. – trashgod

Смежные вопросы