Java Swing Swing Slow X11.JAVA

Программисты JAVA общаются здесь
Anonymous
Java Swing Swing Slow X11.

Сообщение Anonymous »

Следующая программа обновляет этикетку 4 раза в секунду, но скорость перекрашивания отстает. Кажется, это ограничено 500 мс. Я не наблюдал такого поведения в Windows.
Я попробовал с или без The Invokelater (), с созданием нового Repaintmanager и теми же результатами. Если jframe изменен, этикетка хорошо обновлена ​​во время движения мыши. Lts < /li>
< /ul>

import javax.swing.*;

public class Main extends JFrame {

int count;
JLabel lab;

public Main() {
count = 0;
lab = new JLabel(" ");
lab.setHorizontalAlignment(JLabel.CENTER);
setContentPane(lab);
pack();
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
new Thread(new Runnable() {
@Override
public void run() {
while(true) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
refreshLabel();
}
});
try {
Thread.sleep(250);
} catch (InterruptedException e) {
}
}
}
}).start();
}

public void refreshLabel() {
count++;
lab.setText(Integer.toString(count));
}

public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new Main();
}
});
}

}


Подробнее здесь: https://stackoverflow.com/questions/795 ... paint-rate

Вернуться в «JAVA»