Привет,
Я быстро изучаю Java, но кое-что, что я действительно могу сломать, - программирование на Java.Исходя из легкой жизни C #, это полный вызов, чтобы заставить мой пользовательский интерфейс работать.Я знаю, что абсолютные макеты здесь не обсуждаются.
Я столкнулся со следующей проблемой.
В моей панели содержимого (BorderLayout) у меня есть JScrollPanel с JTable и меню в верхней частиприложение.
Проблема в том, что я хочу добавить компонент к югу от макета границы (JScrollPane прикреплен к центру), и я хочу добавить к нему прокручиваемую JTextArea.
Моя мысль состояла в том, чтобы добавить новый JPanel, дать ему макет (не знаю, какой из них лучше в этом случае ... предложения приветствуются), добавить JScrollpanel на эту панель и поверх этого добавить JTextArea.Я пробовал это и графически, это сработало.Тем не менее, настолько неуклюже, насколько это МОЖЕТ быть запрограммировано, JTextArea имеет достаточно большую высоту, очень похожую на JTextField.
Я хочу, чтобы он был по крайней мере на 4 строки и прокручивался.Вот мой код GUI:
setTitle("Game Manager");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 620, 498);
JMenuBar mbMainMenu = new JMenuBar();
setJMenuBar(mbMainMenu);
JMenu mnFile = new JMenu("File");
mbMainMenu.add(mnFile);
contentPane = new JPanel();
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
JScrollPane scrollPane = new JScrollPane();
contentPane.add(scrollPane, BorderLayout.CENTER);
tblGames = new JTable(new GamesTableModel(mainController.retrieveGames()));
tblGames.setShowVerticalLines(true);
tblGames.setShowHorizontalLines(true);
tblGames.setPreferredScrollableViewportSize(new Dimension(500, 70));
tblGames.setFillsViewportHeight(true);
tblGames.setAutoCreateRowSorter(true);
tblGames.getTableHeader().setReorderingAllowed(false);
scrollPane.setViewportView(tblGames);
Итак, под JTable я хочу иметь JtextArea в JScrollPane, высота которого превышает одну строку.
Я в полной растерянности дляэто исправление.
Приветствуются любые советы, не только по самому графическому интерфейсу, но и по соглашениям об именах.
Этот проект только для самообучения, потому что наша школа хочет преподавать C #, а не Java.Java для меня более естественна, чем C #. На мой взгляд, она более приятна. Достаточно о нем.
Пожалуйста, оставьте свои комментарии / советы / ответ ^^
Ваша помощьвысоко ценится!
решено
решение:
JScrollPane gameDescriptionScrollPane = new JScrollPane();
contentPane.add(gameDescriptionScrollPane, BorderLayout.SOUTH);
taGameDescription = new JTextArea();
taGameDescription.setRows(4);
Спасибо: mklhmnn
Урок дня: внимательно прочитайте документацию, а не просто посмотрите на нееи думаю, что вы прочитали это!