平滑组件的内容存在问题。按钮上的文字不会变得平滑。
JButton button = new JButton("Button"){
public void PaintComponent(Graphics g){
Graphics2D g2d = (Graphics2D) g;
//g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
super.paintComponent(g2d);
g2d.dispose();
}
};
我不想创建单独的类并覆盖paintComponent()
,从而导致方法g2d.setRenderingHint(...)
和g2d.drawString("Button")
。
问题是,对于我的应用程序的所有Swing组件,必须打开其中的文本的抗锯齿。不可能手动覆盖paintComponent()
所有项目的方法。
当然,在系统设置中包含文本消除锯齿无助于解决问题。
请帮助。
答案 0 :(得分:0)
看起来你有一个错字。将P
方法的p
更改为paintComponent(...)
。
通常,在覆盖方法时,您应该在方法之前使用@Override
:
@Override
public void paintComponent(Graphics g)
{
...
}
如果您错误地覆盖了方法,@Override
注释将生成编译错误。