Я использую JTabbedPane для хранения каждого шага мастера, который я создаю. Навигация между шагами выполняется с помощью кнопок «Предыдущий/Следующий» или путем выбора вкладки. Кнопки уменьшают/увеличивают значение SelectedIndex JTabbedPane.Вопросы Java JTabbedPane
Мне нужно проверить каждый шаг, прежде чем переходить к следующему шагу. По сути, мне сложно определить, какое событие использовать. Событие StateChange происходит слишком поздно. Какое событие мне нужно наблюдать?
Еще одно раздражение: когда мастер запускается, он, похоже, сохраняет состояние JTabbedPane's SelectedIndex (как правило, значение последнего шага), это значение затем используется для установки SelectedIndex при следующем запуске мастера. Свойство selectedIndex в дизайнере не изменилось. Более того, вызов setSelectedIndex() в contructor JPanel, похоже, не влияет на это. Что мне не хватает?
CardLayout работает хорошо. Два связанных вопроса. 1: Есть ли способ показать вкладки? 2: Какое событие я могу использовать для проверки записи на каждой карте? – craig
«Какое событие я могу использовать для проверки записи на каждой карте?» - когда пользователь нажимает кнопку «Далее», сделайте проверку в методе actionPerformed(), и если проверка не выполнена, не меняйте панель. –
«Есть ли способ показать вкладки?» - Я не думаю, что вы хотите показывать вкладки, но я думаю, вы можете показать список шагов и указать, на каком этапе работает пользователь. Я бы рекомендовал вертикальную панель с левой стороны панели мастера, JLabels для каждого шага и выделение жирным выделенным цветом для текущего шага. –