Итак, на основе ...
public class uyg1 extends JFrame {
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
uyg1 frame = new uyg1();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public uyg1() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
JTextArea textArea = new JTextArea("Test");
textArea.setSize(400, 400);
JScrollPane scroll = new JScrollPane(textArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
frame.getContentPane().add(scroll);
frame.setVisible(true);
}
}
textArea.setSize(400, 400);
не имеет значения, так как менеджер раскладки будет иметь дело с этим.Вы можете предоставить подсказки по размерам через конструктор JTextArea(String, int, int)
, но помните, это количество символов в ширине / высоте, а не в пикселях.
Следующие вопросы вызывают проблемы ...
frame.getContentPane().add(scroll);
frame.setVisible(true);
потому что frame
не определено.Поскольку класс расширяется от JFrame
, они бессмысленны, просто он должен быть
getContentPane().add(scroll);
setVisible(true);
, но я бы добавил ...
pack();
setLocationRelativeTo(null);
перед ним, так как он будетдать вам в целом лучший опыт