Bir bileşenin üst düzey kapsayıcısını almanın bir yolu var mı? Mesela bir JToolbar'ım var ve tek bir kapıda, JToolbar'ın JFrame'inin üst düzey konteynerini veya kendi pencereleri olan bir JDialog olduğunu bilmek istiyorum.JComponent'in en üst düzey konteyneri nasıl alınır?
7
A
cevap
14
SwingUtilities.windowForComponent(...);
6
bileşen hiyerarşiye eklenmiş ise, yinelemeli getParent
arayarak üst düzey konteyner bakabilirsiniz:
Container c = toolbar;
while (c.getParent() != null)
{
c = c.getParent();
}
if (c instanceof JFrame)
{
//...
}
İlgili konular
- 1. Tüm üst düzey pencere javafx nasıl alınır?
- 2. NodeJS oturum nesnesine en üst düzey erişim
- 3. Java'da en üst düzey sınıf nedir?
- 4. Bir öğenin en üst konumu nasıl alınır?
- 5. Android üst düzey etkinliğin üst düzey etkinliğinden etkin
- 6. mocha'da en üst düzey çalıştığında gerçek sunucu hatasını nasıl alırım?
- 7. Git'in en üst düzey çalışma dizininin ne olduğunu nasıl anlarım?
- 8. Üst düzey sınıf dokümantasyonu
- 9. Üst düzey paketler içe aktarma
- 10. @JacksonInject with En üst düzey bir harita üzerinde @JsonCreator kullanın
- 11. Aynı anda çalışan web çalışanı html5 en üst düzey
- 12. C++ 11 Standardında 'en üst düzey cv-niteleyiciler' tanımı nerede?
- 13. Üst düzey işlevinin değişkenini kullanma
- 14. URL üst düzey kategorileri url
- 15. Bu iki üst düzey işlev nasıl farklı?
- 16. Kotlin'de üst düzey işlevden sınıf referansı alın
- 17. Tüm üst düzey etki alanlarının listesi
- 18. Üst düzey javascript olaylarını test etme
- 19. CKağıt Üst Düzey XCode Proje Özellikleri
- 20. `örtük 'değiştirici üst düzey nesneler için kullanılamaz
- 21. React Native Android: Yöntem, bir üst düzey
- 22. piton setup.py Sdist yalnızca üst düzey modülü
- 23. Üst düzey tüketici bloğunda commitOffsets var mı?
- 24. Açıkça İlişkilendirmeden Üst Düzey Düğüm Alma Başlarken
- 25. İçerik denetimleri üst düzey kontroller olmalı
- 26. Tepkisel yönlendirici kullanarak en üst düzey bileşen durumunu Yönlendirmeler'e nasıl iletirsiniz?
- 27. SQL Server 2005'te bir xml sütununun en üst düzey özelliğini nasıl seçerim?
- 28. Volt derlenmiş şablonlar için üst düzey önbellek dizini nasıl ayarlanır?
- 29. Neden üst düzey işlevlerimin Haskell'de imzalara ihtiyacı var?
- 30. Cordova Android 6.4.0 platformlar içinde değil üst klasör üst düzey oluşturur android
Bugün bu aynı sorunla karşı karşıya ve tam olarak recurive yöntem yaptı ve iyi çalıştı. Aslında onaylanmış cevap, bileşenin konteynerinin bir JPanel olması durumunda çalışmaz. Bu yüzden ikinci cevabın daha esnek olduğuna inanıyorum, çünkü neye bakacağınızı seçmenize izin veriyorsunuz .... – HoNgOuRu