По нажатию на кнопку создается новый JFrame, в котором рисуется график.
Поскольку встроенных графиков в Java.swing нету, то я использую библиотеку jCharts. Библиотека хорошая, но для корректного отображения в созданном фрэйме я запускаю поток, который периодически перерисовывает график.
При этом работает кнопка свернуть, а крестик не работает.
Из-за того, что поток засыпает постоянно, не прожимается еще и главный фрэйм, на котором кнопка создания фрэйма с графиком.
Как это обойти ?
Возможно есть событие перемещения окна, тогда я знаю как организовать и без потока фрэйм с графиком. Сейчас убрать поток невозиожно, тк необходима перерисовка.
UPD Иными словами, мне надо заставить поток, рисуйщий главный фрэйм, спать пока не закрыт фрэйм с графиком.
frame = new JFrame();
frame.setSize( 600, 600 );
frame.setTitle(title);
frame.setResizable(false);
frame.setVisible( true );
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Thread T = new Thread (this);
init_components(type, xAxisLabels, xAxisTitle,
yAxisTitle, title, legendLabels, data);
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
T.run();
}
});
@Override
public void run() {
while (true) {
try {
repaint();
T.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace(System.out);
}
}
}