Я пытаюсь создать полупрозрачное окно с Java на OSX и добавить к нему JLabel
.Повторно нанести на полупрозрачную рамку/панель/компонент.
Это JLabel
меняет свой текст каждый второй ....
Однако компонент не перекрашивать хорошо.
Как я могу решить эту проблему?
Я нашел thesearticles, но я не могу понять, как его решить.
Если возможно, пожалуйста, вставьте исходный фиксирование код, вот мое:
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JLabel;
import java.awt.Color;
import java.awt.Font;
import java.util.Timer;
import java.util.TimerTask;
public class Translucent {
public static void main(String [] args) {
JFrame frame = new JFrame();
frame.setBackground(new Color(0.0f,0.0f,0.0f,0.3f));
final JLabel label = new JLabel("Hola");
label.setFont(new Font(label.getFont().getFamily(), Font.PLAIN, 46));
label.setForeground(Color.white);
frame.add(label);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
Timer timer = new Timer();
timer.schedule(new TimerTask(){
int i = 0;
public void run() {
label.setText("Hola "+ i++);
}
}, 0, 1000);
}
}
Попробуйте сбросить фон в коде таймера или вызвать перерисовку на всей панели. Я думаю, что фон просто не знает, что его нужно перекрасить. – jjnguy
Если это будет исправлено, я сделаю это ответом, но сейчас это просто догадка. – jjnguy
+1 для включения логотипа SO. :-) – trashgod