Java 创建新函数,而不是重写组件
若我想在面板上画一些东西,我需要重写paintComponent函数。如果我想创建一个新函数而不是重写,例如 “受保护的组件(图形g)”Java 创建新函数,而不是重写组件,java,user-interface,overriding,Java,User Interface,Overriding,若我想在面板上画一些东西,我需要重写paintComponent函数。如果我想创建一个新函数而不是重写,例如 “受保护的组件(图形g)” 它不工作,面板上什么也没显示。背后的原因是什么?这是因为在绘制组件时,Swing将调用paintComponent。如果你发明了一个新方法,Swing就不会知道,也不会被调用 如果你想命名你的方法 class MultiplicationTablePanel extends JPanel { @Override protected voi
它不工作,面板上什么也没显示。背后的原因是什么?这是因为在绘制组件时,Swing将调用
paintComponent
。如果你发明了一个新方法,Swing就不会知道,也不会被调用
如果你想命名你的方法
class MultiplicationTablePanel extends JPanel {
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawString("Multiplication Table", 0, 0);
您必须确保paintComponent
按如下方式委托使用此方法:
protected void testPaintComponent(Graphics g) { ... }
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
testPaintComponent(g);
}