java - 如何在 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);
}
}
解决方案
这很简单。使用方法 setCorner
scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, new JButton());
推荐阅读
- git - Git 拉回旧的特性分支,包括任何其他特性分支,但介于两者之间的分支
- blockchain - 是否可以在以太坊区块链上存储图像?
- javascript - jQuery 日期选择器,自定义填充选定日期
- phpmyadmin - wamp 安装无法让 myadmin 运行
- javascript - Javascript TypeError:无法读取未定义交换消息的属性“indexOf”
- javascript - JS将输入的单引号替换为另一个字符
- python - 如果可能的话,是否应该避免使用 subprocess.Popen 和 subprocess.call ?
- php - PHP mySQL - 如何在表中获取每种类型的 5 个
- python - 在python列表中提取字符串
- sql - SQL查询从数据库中检索所有员工的列表