Tôi muốn tạo GUI sau bằng Java Swing.Làm cách nào để tạo GUI sau trong Java Swing?
Vì tôi không đủ kinh nghiệm với Java Swing, tôi không chắc chắn làm thế nào để chính xác tái tạo GUI đó.
Tôi đã cố gắng sử dụng GridLayout mà trông như thế này:
Tôi đã thử LayoutManagers khác nhưng do thiếu kinh nghiệm của tôi, tôi không thể có được bất cứ điều gì, ngay cả từ xa giống như GUI Tôi muốn Hoàn thành.
Tôi có thể phải sử dụng GridBagLayout nhưng tôi đã thử nó và chỉ đơn giản là không thể làm được gì. Tôi không chắc chắn làm thế nào để sử dụng chính xác GridBagLayout, đặc biệt là vì có một phương sai của số lượng colums cần thiết (2, 2 và sau đó 3).
Đây là đoạn mã được sử dụng để tạo ra các giao diện thứ hai:
import java.awt.*;
import javax.swing.*;
public class GUITest extends JFrame {
public GUITest() {
super("Testing Title");
Container pane = getContentPane();
pane.setLayout(new GridLayout(3,1));
pane.add(getHeader());
pane.add(getTextArea());
pane.add(getButtonPanel());
}
public JComponent getHeader() {
JPanel labelPanel = new JPanel();
labelPanel.setLayout(new GridLayout(1,2));
labelPanel.setSize(getPreferredSize());
JLabel labelLocal = new JLabel("Left value: ", JLabel.CENTER);
JLabel labelDB = new JLabel("Right value: ", JLabel.CENTER);
labelPanel.add(labelLocal);
labelPanel.add(labelDB);
return labelPanel;
}
public JComponent getTextArea() {
JPanel textPanel = new JPanel();
textPanel.setLayout(new GridLayout(1,2,5,0));
JTextArea testTextArea = new JTextArea();
testTextArea.setEditable(false);
JScrollPane sp1 = new JScrollPane(testTextArea);
JTextArea testTextArea2 = new JTextArea();
JScrollPane sp2 = new JScrollPane(testTextArea2);
testTextArea2.setEditable(false);
testTextArea.setText("Hello Hello Hello\nTesting!\ntesterino\ntesteroni");
testTextArea2.setText("Hello Hello Hello\nTesting!\ntest\nABC123\ncdef123\nhijk123");
textPanel.add(sp1);
textPanel.add(sp2);
return textPanel;
}
public JComponent getButtonPanel() {
JPanel inner = new JPanel();
inner.setLayout(new FlowLayout((FlowLayout.CENTER),0,100));
inner.add(new JButton("Do something"));
inner.add(new JButton("Do something different"));
inner.add(new JButton("Do something even more different"));
return inner;
}
public static void main(String[] args) {
GUITest e = new GUITest();
e.setSize(700, 500);
e.setVisible(true);
e.setResizable(false);
e.setDefaultCloseOperation(EXIT_ON_CLOSE);
e.setLocationRelativeTo(null);
}
}
Tôi biết ơn đối với bất kỳ loại hỗ trợ!
Bạn có thể sử dụng 'MigLayout'. Thật dễ dàng –
Trình soạn thảo GUI của NetBeans IDE sẽ là cách tiếp cận của tôi. Như tất cả các mã đó không thực sự thú vị so với logic kinh doanh. Ngoài ra các tài sản và như vậy được trình bày để thử. –
@ JoopEggen Tôi không hiểu những gì bạn đang cố gắng nói .... nó giống như khi có hai điều nhưng bạn tập trung vào một – taclight