Tôi đã tạo ứng dụng đơn giản với Bố cục viền và thêm vào hai nút và JTable. Tôi sử dụng JSplitPane giữa button2 và JTable. Tôi muốn xác định lại kích thước mặc định của khối ở vị trí button1. Làm thế nào tôi có thể giải quyết nhiệm vụ này?Không thể thay đổi kích thước của khối trong BorderLayout
Đây là mã của tôi:
package test;
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTable;
import javax.swing.SwingUtilities;
public class Sample {
public Sample() {
JFrame app = new JFrame("Sample");
app.setSize(new Dimension(800,600));
JPanel panel = new JPanel();
app.add(panel);
BorderLayout borderlayout = new BorderLayout();
panel.setLayout(borderlayout);
JButton but1 = new JButton("1");
JButton but2 = new JButton("2");
but2.setMinimumSize(new Dimension(250,0));
String[] colNames = {"Name","Number","Scores"};
Object[][] data = {
{ "Mark",11,12},
{"Tommy",23,34},
{"John",34,45}
};
JTable table = new JTable(data, colNames);
JScrollPane scrollpane = new JScrollPane(table);
JSplitPane jsplitpane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,but2,scrollpane);
panel.add(but1,BorderLayout.NORTH);
panel.add(jsplitpane,BorderLayout.CENTER);
app.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new Sample();
}
});
}
}
M ay bạn vui lòng nêu rõ hơn một chút về nhu cầu của bạn, để ai đó trả lời bạn trên những dòng này :-) Hình ảnh chính xác những gì bạn muốn, một phác thảo thô, là tất cả những gì cần thiết để tạo ra ý tưởng, để hiểu được nhu cầu của câu hỏi. +1 cho SSCCE –