SORU
8 Temmuz 2009, ÇARŞAMBA


() Java Swing düzeltin vs çizilecek()

Ben sık sık bir JPanel içeriğini değiştirmek için istediğiniz bir Salıncak uygulama kuruyorum. Bunu yapmak için, removeAll() Benim yeni içerik ekleme, revalidate() Arama arıyorum.

Ancak eski içeriği hala aslında görünen (ama yeni içerik tarafından gizlenmiş) buluyorum. revalidate() ek olarak repaint() çağrı eklersem beklendiği gibi çalışır.

Diğer durumlarda revalidate() yeterli aramıştım bunu yaşadım eminim.

Temelde benim sorum her iki işlevi aramak gerekir - yani, zaman her çağırayım mı?

CEVAP
8 Temmuz 2009, ÇARŞAMBA


repaint() revalidate() aramalısın. Eski söyler Salıncak bu bölgede, pencere kirli (gerekli silmek için görüntü eski çocuklar tarafından kaldırıldı removeAll()); ikincisi söyler düzeni yöneticisi için yeniden düzeni (gerektiğinde ekleme bileşenleri). Bu nedençocuklaryeniden çizilecek panel ama panel kendisi bunu yapmak için neden olamaz (this çizilecek listesi tetikler.

Daha genel bir not: orijinal paneli yeniden yerine, yeni bir panel bina ve üst onları değiştirmeyi öneriyorum.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Amir Parmar

    Amir Parmar

    25 Kasım 2010
  • Jason Parker

    Jason Parker

    14 Aralık 2009
  • Joanna Okrajni

    Joanna Okraj

    4 EYLÜL 2010