JButton:
public class noButton extends JButton
{
//tried getPreferredSize() and getSize() too
@Override
public Dimension getMaximumSize()
{
return new Dimension();
}
}
自定义用户界面:
public class barUI extends BasicScrollBarUI {
barUI()
{
}
protected JButton createIncreaseButton(int i) {
return new noButton();
}
protected JButton createDecreaseButton(int i){
return new noButton();
}
@Override
protected void installComponents() {
switch(this.scrollbar.getOrientation()) {
case 0:
if (this.scrollbar.getComponentOrientation().isLeftToRight()) {
this.incrButton = this.createIncreaseButton(3);
this.decrButton = this.createDecreaseButton(7);
} else {
this.incrButton = this.createIncreaseButton(7);
this.decrButton = this.createDecreaseButton(3);
}
break;
case 1:
this.incrButton = this.createIncreaseButton(5);
this.decrButton = this.createDecreaseButton(1);
}
this.incrButton=new noButton();
this.decrButton=new noButton();
this.decrButton.setSize(0,0);
this.scrollbar.add(incrButton);
this.scrollbar.add(decrButton);
System.out.println(incrButton.getParent());
System.out.println(incrButton.getSize());
this.scrollbar.setEnabled(this.scrollbar.isEnabled());
}
}
ScrollPane:
scroll=new JScrollPane(){
@Override
public void updateUI(){
super.updateUI();
getVerticalScrollBar().setUI(new barUI());
getHorizontalScrollBar().setUI(new barUI());
}
};
我一直在尝试先删除一个按钮。上面的代码是在各种线程中提出的,但它绝对不起作用。我只是得到了vertical.setPreferredSize(new Dimension(10,10));
还有另一种建议,那就是覆盖添加按钮并删除相关行的方法。这也什么也没做。
更新:在问题中添加了“箭头”以供澄清更新:更改代码
JButton:公共类noButton扩展了JButton {//也尝试了getPreferredSize()和getSize()@Override public Dimension getMaximumSize(){...
还有另一种建议,以覆盖添加按钮并删除相关行的方法。