मुझे लगता है कि ज्यादातर लोगों के लिए रिवर्स समस्या है। मैं उपयोगकर्ता विंडो बंद करने से पहले कुछ बचाता है क्या करना चाहता है, तो निम्न सुंदर मानक कोड को देखने के लिए:जावा - विंडो विंडो को बंद करने से मैं विंडो क्लोजिंग को कैसे रोकूं
frame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent ev) {
boolean close = true;
// check some files, asking if the user wants to save
// YES and NO handle OK, but if the user hits Cancel on any file,
// I want to abort the close process
// So if any of them hit Cancel, I set "close" to false
if (close) {
frame.dispose();
System.exit(0);
}
}
});
कोई फर्क नहीं पड़ता कि मैं क्या करने की कोशिश, खिड़की हमेशा बंद कर देता है जब मैं windowClosing से बाहर आते हैं। विंडो एडाप्टर को विंडो लिस्टनर में बदलना कोई फर्क नहीं पड़ता है। अजीब बात यह है कि दस्तावेज़ीकरण स्पष्ट रूप से कहता है "यदि कार्यक्रम इस घटना को संसाधित करते समय विंडो को स्पष्ट रूप से छुपा या निपटान नहीं करता है, तो विंडो बंद करने का ऑपरेशन रद्द कर दिया जाएगा," लेकिन यह मेरे लिए इस तरह से काम नहीं करता है। फ्रेम पर एक्स को संभालने का कोई और तरीका है? TIA
मैं शर्त लगाऊंगा कि वहां कहीं भी एक बग है जो आपके लिए स्पष्ट होगा यदि आप अपनी समस्या को [एसएससीईएस] (http://sscce.org) बनाकर जितना संभव हो सके सरल बनाते हैं। यदि यह स्पष्ट नहीं होता है, तो आप एसएससीई पोस्ट कर सकते हैं और हम इस पर काम कर सकते हैं और बेहतर आपकी मदद कर सकते हैं। –
प्रदान किए गए कोड के आधार पर, 'क्लोज़' चर सेट करने के लिए आपका तर्क शायद गलत है। चूंकि यह सत्य पर डिफ़ॉल्ट है, ऐसा लगता है कि आप इसे ठीक से रीसेट नहीं करते हैं। क्या आपने कथन से पहले मूल्य मुद्रित किया था? – camickr
मैं सिर्फ एक और स्थिति में भाग गया जो Netbeans (8.0) का उपयोग करते हुए इन लक्षणों का कारण बन सकता है।डिज़ाइन व्यू द्वारा स्वत: जेनरेट किया गया कोड अपना डिफ़ॉल्ट क्लोज ऑपरेशन जोड़ देगा, जो मानव-जेनरेट कोड में निर्दिष्ट व्यवहार को ओवरराइड कर सकता है। इसे JDialog गुण बॉक्स में संपादित किया जा सकता है। (पौलुस के प्रश्न का उत्तर न होने के बावजूद, इसी तरह की समस्याओं के समाधान की मांग करने वाली भविष्य की पीढ़ियों के लिए इस टिप्पणी को छोड़कर।) –