gpt4 book ai didi

java - Swing 对话框渐变绘制问题

转载 作者:行者123 更新时间:2023-12-02 01:50:30 27 4
gpt4 key购买 nike

想要为对话框绘制渐变背景

最佳答案

  1. 不要使用根 Pane 或分层 Pane 。

  2. 不要重写 JFrame 或 JDialog 上的 Paint()。

如果您想对背景进行自定义绘制,那么您可以重写 JPanel 的 PaintComponent(...) 方法。然后,您可以将此面板设置为对话框的内容 Pane 。

阅读 Swing 教程中关于 Custom Painting 的部分获取帮助您入门的工作示例。

此外,Swing 不正确支持透明背景。

绘制透明背景的基本逻辑是:

JPanel panel = new JPanel()
{
protected void paintComponent(Graphics g)
{
g.setColor( getBackground() );
g.fillRect(0, 0, getWidth(), getHeight());
super.paintComponent(g);
}
};
panel.setOpaque(false); // background of parent will be painted first
panel.setBackground( new Color(255, 0, 0, 20) );
frame.add(panel);

查看Background With Transparency了解更多信息。

因此,首先使用非透明颜色在自定义面板上进行渐变绘画。一旦您了解了进行自定义绘画的正确方法,您就可以担心透明度了。

关于java - Swing 对话框渐变绘制问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53048952/

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