swing JPanel画渐变的背景色

本文介绍了一个使用Java Swing实现的自定义JPanel组件——GradientPanel。该组件能够在面板上绘制从白色到蓝色的渐变效果。通过继承JPanel并重写paintComponent方法,利用Graphics2D和GradientPaint来完成渐变色的绘制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.LayoutManager;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.WindowConstants;

public class GradientPanel extends JPanel {
public GradientPanel(LayoutManager lm) {
super(lm);
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
if (!isOpaque()) {
return;
}

int width = getWidth();
int height = getHeight();
Graphics2D g2 = (Graphics2D) g;
GradientPaint gradientPaint =new GradientPaint(width/2, height/2,Color.white, width, height, Color.blue,false);


g2.setPaint(gradientPaint);
g2.fillRect(0, 0, width, height);

}
public static void main(String args[]){
JFrame jf=new JFrame("GradientPanelTest");
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
GradientPanel gp=new GradientPanel(new BorderLayout());
jf.getContentPane().add(gp);
jf.setSize(500,400);
jf.setVisible(true);
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值