从JScrollPane中的JScrollBar删除箭头按钮

问题描述 投票:0回答:1

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(){...

java swing jscrollpane jscrollbar
1个回答
0
投票

还有另一种建议,以覆盖添加按钮并删除相关行的方法。

© www.soinside.com 2019 - 2024. All rights reserved.