2010-10-06 26 views
7

क्या एडब्ल्यूटी या स्विंग में कोई तरीका है या तो मुझे बताएं कि क्या एक मोडल विंडो (या एकाधिक) ऊपर है, या उनमें से एक सरणी वापस करने के लिए?क्या यह जानने का एक आसान तरीका है कि वर्तमान में एक मॉडल संवाद प्रदर्शित होता है या नहीं?

मैंने Window, Dialog, JDialog, SwingUtilities इत्यादि में देखा लेकिन एक नहीं मिला।

(मैं जानता हूँ कि मैं Window#getWindows के माध्यम से लूप कर सकते हैं और Dialog#isModal की जाँच करें।)

उत्तर

10

(यह जो मैं जानता हूँ और, काम करता है, हालांकि मुझे यकीन है कि अगर यह Window#isShowing उपयोग करने के लिए सही है, या अगर मैं कुछ और ही इस्तेमाल करना चाहिए नहीं कर रहा हूँ ।)

public static boolean isModalDialogShowing() 
{ 
    Window[] windows = Window.getWindows(); 
    if(windows != null) { // don't rely on current implementation, which at least returns [0]. 
     for(Window w : windows) { 
      if(w.isShowing() && w instanceof Dialog && ((Dialog)w).isModal()) 
       return true; 
     } 
    } 
    return false; 
} 
+0

महोदय, आप एक जानवर हैं! – FonzTech

संबंधित मुद्दे

 संबंधित मुद्दे