我有一个JTextField,如果它有无效内容,它就会被清除。我想背景闪烁红色一到两次,以表明用户,这已经发生了。我尝试过:
field.setBackground(Color.RED);
field.setBackground(Color.WHITE);
但它是红色的,时间很短,不可能被看到。有什么提示吗?
您需要扩展公共类Timer这样做:
private class FlashTask extends TimerTask{
public void run(){
// set colors here
}
}
您可以设置计时器,使其以您喜欢的任何时间间隔执行,以创建闪烁效果
根据文件:
公共void scheduleAtFixedRate(TimerTask任务,长延迟,长周期)
将指定的任务调度为重复的固定速率执行,在指定的延迟之后开始。
正确的解决方案是使用Swing计时器,因为计时器的ActionListener中的所有代码都将在Swing事件线程上调用,这可以防止出现间歇性错误。例如:
public void flashMyField(final JTextField field, Color flashColor,
final int timerDelay, int totalTime) {
final int totalCount = totalTime / timerDelay;
javax.swing.Timer timer = new javax.swing.Timer(timerDelay, new ActionListener(){
int count = 0;
public void actionPerformed(ActionEvent evt) {
if (count % 2 == 0) {
field.setBackground(flashColor);
} else {
field.setBackground(null);
if (count >= totalCount) {
((Timer)evt.getSource()).stop();
}
}
count++;
}
});
timer.start();
}
它将通过flashMyField调用(someTextField,Color.RED,5002000)
警告:代码尚未编译或测试。
问题内容: 我不知道这有可能吗? 但是我想更改光标闪烁的颜色…通常是黑色的.... 我正在做一个基于java-swing的项目,在那…要求之一就是更改光标闪烁的颜色。 … 这可能吗? 问题答案: “光标”用于指不闪烁的鼠标光标。 因此,我假设您正在谈论文本组件中使用的插入符号: 编辑: 以上建议针对一个文本字段执行此操作。要为所有文本字段更改它,您应该能够在程序开始时使用以下命令:
我怎样才能使背景色在每次按下按钮时连续闪现2个新颜色?现在它只显示两种颜色,但它们不会连续闪烁或闪烁。
这款应用目前以黑屏开始,当按下中间的按钮时,它会在每次按下按钮时改变背景颜色。但我希望应用程序闪烁或闪烁2种不同的颜色:而不是只显示一种不闪烁的颜色。
这是因为在开发模式下,为了通过 Webpack 实现热加载,CSS代码是打包在 JavaScript 代码中,并动态打到页面中去,从而元素重绘引起了闪烁。 不用担心,在生产模式下,CSS代码会单独打包至独立的文件并置于head标签内,不会出现页面闪烁的现象。
我在Lollipop上的共享元素转换中看到了奇怪的事情。共享元素在开始动画之前闪烁(请看视频https://www.youtube.com/watch?v=DCoyyC_S-9A) 我不知道为什么会这样。但是,当我添加
我试图用pyplay制作一个游戏,我几乎完成了,但我想让被画在墙上的盒子不闪烁,这些红色的盒子在整个游戏中闪烁,我不想让它们闪烁,最后,我在一个if条件下调用player碰撞函数,在这里每当我制作新的碰撞器时,我每次都要在if条件下添加函数,我想要的是碰撞器对象自动调用这个函数,而不需要我在if语句中为碰撞器的每个实例调用它对象。请指导我如何这样做。