#java #swing #windowbuilder
#java #swing #windowbuilder
Вопрос:
Это то, что я делаю, чтобы добавить вкладки в tabbedpane
tabbedPane = new JTabbedPane(JTabbedPane.TOP);
panel = new Panel(this);
panel.setPreferredSize(new Dimension(0, 0));
panel.setMinimumSize(new Dimension(10, 10));
GroupLayout groupLayout = new GroupLayout(this);
groupLayout.setHorizontalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(Alignment.TRAILING, groupLayout.createSequentialGroup()
.addGroup(groupLayout.createParallelGroup(Alignment.TRAILING)
.addComponent(tabbedPane, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, 850, Short.MAX_VALUE)
.addComponent(panel, GroupLayout.PREFERRED_SIZE, 850, Short.MAX_VALUE))
.addGap(88))
);
groupLayout.setVerticalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addComponent(panel, GroupLayout.PREFERRED_SIZE, 27, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(tabbedPane, GroupLayout.PREFERRED_SIZE, 676, groupLayout.PREFERRED_SIZE)
.addContainerGap(14, Short.MAX_VALUE))
);
panela= new panelb(this);
JScrollPane scrollPane_panela = new JScrollPane(panela);
tabbedPane.addTab("Birth History", null, scrollPane_panela, null);
setLayout(groupLayout);
panelb= new panleb(this);
JScrollPane scrollPane_panleb = new JScrollPane(panleb);
tabbedPane.addTab("Headache History", null, scrollPane_panleb, null);
setLayout(groupLayout);
panelc= new panelc(this);
JScrollPane scrollPane_Tpanelc = new JScrollPane(panelc);
tabbedPane.addTab("Treatment History", null, scrollPane_panelc, null);
setLayout(groupLayout);
Я использую групповую компоновку. Я не устанавливал какой-либо предпочтительный размер, минимальный размер или размер.
Я мог прокручивать только в своей системе
, когда я пытаюсь запустить это приложение в другой системе. Я не мог прокручивать.
размер в компоненте add — это то, что выдает проблему
Любые предложения были бы большой помощью
Комментарии:
1. Есть ли какие-либо исключения? Пожалуйста, поделитесь минимальным тестируемым кодом.
2. нет, когда я меняю предпочтительный размер в методе addcomponent на размер по умолчанию, tabbedpane исчезает, я не мог точно понять, что его вызывает. извините
3. Извините, но это не тестируемый код. Я не могу вам помочь.
4. .AddComponent(tabbedPanel, groupplayout. PREFERRED_SIZE, 27, groupplayout. PREFERRED_SIZE). Это то, что вызывает ошибку, которую я чувствую
Ответ №1:
Спасибо за ответ. Проблема в том, что я добавил tabbedpane в splitpane, где границы были установлены вручную. когда я удалил эти границы, чтобы позволить менеджеру компоновки узнать предпочтительный размер. Все работает нормально