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

  • curioustravelers

    curioustrave

    12 AĞUSTOS 2006
  • Flohoo

    Flohoo

    12 EYLÜL 2009
  • lilstevie89

    lilstevie89

    25 Mart 2011