gpt4 book ai didi

java - 如何消除 JTextField 边缘的这种模糊?

转载 作者:行者123 更新时间:2023-12-04 08:22:36 24 4
gpt4 key购买 nike

我正在对 JTextField 进行四舍五入,但是在该字段变圆后,边缘变得模糊并且看起来不专业。
这是我用来舍入 JTextField 的代码。我正在扩展 JTextFiled 并更改 paintComponent值。

//Rouding the field
protected void paintComponent(Graphics g) {
g.setColor(getBackground());
g.fillRoundRect(0, 0, getWidth()-1, getHeight()-1, 15, 15);
super.paintComponent(g);
}

protected void paintBorder(Graphics g) {
g.setColor(getForeground());
g.drawRoundRect(0, 0, getWidth()-1, getHeight()-1, 15, 15);
}

public boolean contains(int x, int y) {
if (shape == null || !shape.getBounds().equals(getBounds())) {
shape = new RoundRectangle2D.Float(0, 0, getWidth()-1, getHeight()-1, 15, 15);
}
return shape.contains(x, y);
}

最佳答案

在您的绘画方法中,您可以尝试对图形使用抗锯齿。
您将在单独的 Graphics 对象上设置绘画属性:

Graphics2D g2d = (Graphics2D)g.create();
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
// add painting logic
g2d.dispose();

关于java - 如何消除 JTextField 边缘的这种模糊?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65425098/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com