我正在尋找解決方案來刪除AWT ScrollPane中的默認邊框。在AWT中刪除容器(ScrollPane)邊框
在JScrollPane的其相當簡單..
paneScrollPane.setBorder(BorderFactory.createEmptyBorder());
或
paneScrollPane.setBorder(空);
只是想知道,我們可以實現滾動窗格
的情況下我正在尋找解決方案來刪除AWT ScrollPane中的默認邊框。在AWT中刪除容器(ScrollPane)邊框
在JScrollPane的其相當簡單..
paneScrollPane.setBorder(BorderFactory.createEmptyBorder());
或
paneScrollPane.setBorder(空);
只是想知道,我們可以實現滾動窗格
的情況下這可能是不可能的。 AWT
的一個主要缺點是您無法實際繪製或定製AWT
組件的視圖。
我可能會做的唯一建議是,您可以嘗試在您的ScrollPanel周圍創建繪製邊框的畫布。
您可以使用此方法:
JScrollPane scrollPane = new JScrollPane(list);
scrollPane.setViewportBorder(null);
我從類javax.swing.plaf.synth.SynthScrollPaneUI這樣的信息:
protected void paint(SynthContext context, Graphics g) {
Border vpBorder = scrollpane.getViewportBorder();
if (vpBorder != null) {
Rectangle r = scrollpane.getViewportBorderBounds();
vpBorder.paintBorder(scrollpane, g, r.x, r.y, r.width, r.height);
}
}
自定義畫布將與ScrollPane一樣艱苦工作btw +1 – mKorbel