paintComponent()
işlevli bir JPanel
sahibim. Bir kez arayacağım, sonra kullanıcı farklı bir JButton
tıkladığında, bayrak ayarlayacağım ve bayrak ayarlandıktan sonra biraz farklı bir şey yapacağından bu fonksiyonu tekrar aramak istiyorum.JPanel Graphics takas ve yeniden boyama?
İşte merak ettiğim şey şu: paintComponent
adresindeki mevcut öğeleri nasıl temizlerim? Ve yeniden çizebilmek için, tekrar paintComponent
mu arayayım?
Şu anda çalışıyorum şu:
if (flag2==true) {
g.drawRect(...);
} else {
g.drawLine(...);
}
Ama ben ne sorun var gibi görünüyor, testler aracılığıyla:
boya bileşenindeflag2 = true;
repaint(); //I expect (want) paintComponent to be called again
, ben şeyler gibi yapmak yapıyor.
Yardımlarınız için teşekkür ederiz.
paintComponent yönteminin içinden repaint() yöntemini çağırmıyorsunuz, değil mi? Reaint() çağrısının yenilenmesini istediğiniz panelle ilişkilendirildiğinden emin misiniz? (ör. myPanel.repaint())? –