首页 > 解决方案 > 如何在 JScrollPane 的左上角添加组件?

问题描述

JScrollPane用 a RowHeaderView、 aColumnHeaderView和 a 创建了 a ViewPortView。我添加了不同颜色的 JPanel,并注意到左上角有一个角,你不能只添加一个Component. 我想问,怎么可能在Component那里添加一个。

这里有一个图像。我的意思是绿色的区域:

在此处输入图像描述

这里是我的代码:

public class Example {

    public static void main(String[] args) {
        JFrame frame = new JFrame();
        frame.setSize(1000, 800);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setLocationRelativeTo(null);

        JPanel panel0 = new JPanel();
        panel0.setBackground(Color.yellow);
        JPanel panel1 = new JPanel();
        panel1.setBackground(Color.red);
        panel1.setPreferredSize(new Dimension(30, 200));
        JPanel panel2 = new JPanel();
        panel2.setBackground(Color.blue);
        panel2.setPreferredSize(new Dimension(200, 30));
        JScrollPane scrollPane = new JScrollPane();
        scrollPane.setViewportView(panel0);
        scrollPane.setRowHeaderView(panel1);
        scrollPane.setColumnHeaderView(panel2);
        scrollPane.setBackground(Color.green);

        frame.add(scrollPane);
        frame.setVisible(true);
    }

}

标签: javaswingawtjscrollpane

解决方案


这很简单。使用方法 setCorner

scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, new JButton());

推荐阅读