Я построил дисплей TabPanel. На этом этапе диаграмма не отображается. Когда я нажимаю кнопку, я создаю новую диаграмму, добавляя ее в панель. Но ничего не происходит. Я должен щелкнуть по панели, чтобы наконец отобразить диаграмму.JfreeChart не отображается перед нажатием
Таким образом, я помещаю repaint() на TabPanel, который содержит ChartPanel, но без эффекта. Я что-то упустил?
if(myChart==null){
myChart = new PortfolioChart(portfolioModel.getDataMatrix());
add(myChart.createPanel(), BorderLayout.CENTER);
repaint();
}else{
myChart.setPortfolio(portfolioModel.getDataMatrix());
myChart.updateDataSet();
}
Может быть, я должен поместить инструкцию repaint() на что-то другое?
Иногда недействительными(); перекрасить(); работает. Также попробуйте вызвать эти методы в ChartPanel, если он все еще не работает. –
Также дважды проверьте, выполняете ли вы это из EDT. – rlegendi
К сожалению, это все еще не работает для меня. – user3239711