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

  • Fubar Protocol

    Fubar Protoc

    21 AĞUSTOS 2010
  • hoorahjencar

    hoorahjencar

    6 HAZİRAN 2007
  • Max Lee

    Max Lee

    18 AĞUSTOS 2006