1 回答

TA貢獻1906條經驗 獲得超3個贊
您可以使用setDividerSize它來更改其寬度。它的默認值為 10。完整示例:
public class SplitPaneTest extends JFrame {
public SplitPaneTest() {
super("test");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new BorderLayout());
JPanel left = new JPanel();
JPanel right = new JPanel();
JSplitPane sp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, left, right);
System.out.println(sp.getDividerSize()); //Prints 10
sp.setDividerSize(1);
add(sp, BorderLayout.CENTER);
pack();
setLocationRelativeTo(null);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
new SplitPaneTest().setVisible(true);
});
}
}
然而,外觀和感覺能夠改變它的外觀,因為它們改變了它的UI. 如果上述解決方案不適合您,您將不得不修改其 UI。例如,在我的一個應用程序中,我不需要任何線條(在使用 Windows 外觀和感覺時),因此為了使其不可見,我必須:
sp.setUI(new BasicSplitPaneUI() {
@Override
public BasicSplitPaneDivider createDefaultDivider() {
return new BasicSplitPaneDivider(this) {
private static final long serialVersionUID = -6000773723083732304L;
@Override
public void paint(Graphics g) {
//Divider gets no painting
}
};
}
});
添加回答
舉報