我有一个扩展JButton的类,因为我使用的自定义外观忽略了isOpaque()调用。我的意思是,即使我在它和所有父面板上调用了setOpaque(false),也会渲染按钮的背景。我已经确认这是来自公司设计人员的LAF的一个问题,所以除了扩展课程,我无能为力。 所以我的问题是,如何实现paint()方法不渲染背景和按钮图标? 干杯
已解决:如果有人感兴趣,我所追求的答案就是使用button.setContentAreaFilled(false);
答案 0 :(得分:4)
绘画由三个方法完成:paintComponent,paintBorder和paintChildren。它们按顺序调用,它是第一个绘制组件背景的。如果你超载那个并且离开另外两个,你应该没事。