要闪烁任何JComponent的背景颜色,可以使用Java Swing中的Timer类和ActionListener接口来实现。下面是一个示例代码:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class BlinkingComponent extends JComponent implements ActionListener {
private Color color1;
private Color color2;
private Color currentColor;
private Timer timer;
public BlinkingComponent() {
color1 = Color.RED;
color2 = Color.YELLOW;
currentColor = color1;
timer = new Timer(500, this);
timer.start();
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(currentColor);
g.fillRect(0, 0, getWidth(), getHeight());
}
@Override
public void actionPerformed(ActionEvent e) {
if (currentColor == color1) {
currentColor = color2;
} else {
currentColor = color1;
}
repaint();
}
public static void main(String[] args) {
JFrame frame = new JFrame("Blinking Component");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200, 200);
BlinkingComponent blinkingComponent = new BlinkingComponent();
frame.add(blinkingComponent);
frame.setVisible(true);
}
}
这个示例代码创建了一个自定义的JComponent子类BlinkingComponent,它会在背景颜色之间进行闪烁。在构造函数中,我们定义了两种颜色color1和color2,并初始化当前颜色为color1。然后使用Timer类创建一个定时器,每500毫秒触发一次ActionEvent。在actionPerformed方法中,我们切换当前颜色并调用repaint方法来重新绘制组件。
你可以将这个BlinkingComponent添加到任何Swing容器中,并且它的背景颜色将会闪烁。你可以根据需要调整定时器的间隔和颜色。
注意:这个示例代码仅演示了如何实现背景颜色的闪烁效果,并不涉及云计算相关的内容。
云+社区开发者大会(杭州站)
【BEST最优解】企业应用实践(教育专场)
云+社区沙龙online [技术应变力]
云+社区沙龙online第6期[开源之道]
腾讯云数智驱动中小企业转型升级系列活动
极客说第一期
《民航智见》线上会议
腾讯技术开放日
云+社区技术沙龙[第16期]
DB-TALK 技术分享会
领取专属 10元无门槛券
手把手带您无忧上云