ваш код содержит много пропущенных классов!когда вы публикуете свой код, по крайней мере, работайте с суперклассами, чтобы мы могли понять, что с ним делать.
в любом случае
Я пытался просто добавить пользовательские панели вкадр, но они все еще не видны.
это противоречит вашему коду!в коде
panelMain.add(panelSecondary, BorderLayout.CENTER);
panelMain.add(clearButton, BorderLayout.SOUTH);
panelMain.add(submitButton, BorderLayout.SOUTH);
panelMain.add(exitButton, BorderLayout.SOUTH);
передаваемые ограничения относятся к BorderLayout
, с другой стороны, вы не установили макет на BorderLayout
, поэтому по умолчанию это FlowLayout
и снова, даже если было добавлено значение BorderLayout
в той же самой «рамке», будет покрыт последний компонент в этой границе!
вы не загрузили изображение, но я могу представить кнопки, расположенные горизонтально пов центре, и это из-за расположения FlowLayout
по умолчанию JPanel
.
Я надеюсь, что JPanels окажутся на кадре в полугладком и аккуратном виде, так чтоона может прокручивать кадр вверх и вниз и вводить необходимую информацию.
ну, вы делаете панель прокрутки, содержащую панели и кнопки, и это просто неправильно (по крайней мере, в вашейпример проектирования).
то, что вы должны сделать, это что-то вроде
JFrame f = new JFrame();
JPanel slidingPanel = new JPanel ();
slidingPanel.setLayout(new BoxLayout(slidingPanel,BoxLayout.Y_AXSIS));
JScrollPane scrollPane = new JScrollPanel (slidingPanel);
f.getContentPane().add(scrollpane,BorderLayout.CENTER);
//then add all of your panels in the slidingpanel
JPanel buttonPanel = new JPanel();
//i can't give you a hint on this , it's almost just designer choice for how you want your buttons to layout
//but add them to the south !!
f.getContentPane().add(buttonPanel,BorderLayout.SOUTH);
, и если вам все еще нужны дополнительные руки для вашего проекта для вашей семьи, я с радостью помогу вам, но переполнение стекане рдобавьте свой проект в частное репозиторий github или, если у вас уже есть один, пригласите меня, моя учетная запись имеет те же данные, что и моя учетная запись здесь;);