Я не могу выровнять сеточные панели в Swing из-за фиксированного размера CardLayout.
У меня есть gridPanel gpTenderTypes, для которого я использовал макет карты.
gpTenderTypes.setLayout(new CardLayout());
При нажатии кнопки карта изменится и будет вызван класс (например, при нажатии кнопки кредитной карты будет показана кредитная карта на панели сетки и будет вызван объект Card1 ().
gpTenderTypes.add(new Cash1(), DBConstants.TENDER_TYPE_CASH);
gpTenderTypes.add(new Card1(), DBConstants.TENDER_TYPE_CREDIT_CARD);
gpTenderTypes добавлен в другую gridPanel gp2row вместе с 2 другими сеточными панелями.
gp2row.addFilledComponent(gpCustDet, 1, 1, 6, 1,GridBagConstraints.BOTH);
gp2row.addFilledComponent(gpTT, 1, 7, 1, 1, GridBagConstraints.BOTH);
gp2row.addFilledComponent(gpButtonsPanel, 1, 8, 6, 1,GridBagConstraints.BOTH);
gp2row добавлен на экран:
this.addFilledComponent(gp2row, 2, 1, 14, 1, GridBagConstraints.BOTH);
Я понял, что размер CardLayout остается постоянным независимо от изменения его размера с помощью setSize или setPreferredSize. Изменение размеров других GridPanels (gpCustDet, gpButtonsPanel) также бесполезно.
Как мне это исправить?
Спасибо!