जावा में एक सरल चेतावनी संदेश कैसे प्रस्तुत करें?


128

.NET से आ रहा है इसलिए मैं डेस्कटॉप ऐप्स में अलर्ट () का उपयोग कर रहा हूं। हालाँकि इस जावा डेस्कटॉप ऐप में, मैं सिर्फ एक संदेश को चेतावनी देना चाहता हूं जिसमें कहा गया है कि "जावा का उपयोग करने के लिए धन्यवाद" मुझे इस बात से गुजरना होगा:

(JoptionPane का उपयोग करके)

क्या कोई आसान तरीका है?


10
आप वास्तव में "आसान" से क्या उम्मीद करते हैं? यदि यह वाचालता है, तो इसे केवल कुछ स्थिर उपयोगिता पद्धति में क्यों न लपेटें और इसे दूर छिपाएं, उदाहरण के लिए? वैसे, आधिकारिक ट्यूटोरियल यहां है
बालुसक

5
यदि आप 12 साल पुराने ट्यूटोरियल के बजाय तत्काल शिकायत के बाद प्रलेखन पढ़ते हैं, तो आपको पता चलेगा कि [केवल दो मापदंडों के साथ एक अधिभार है: docs.oracle.com/javase/7/docs/api/javax/swing/… । java.lang.Object)। (जिनमें से पहला शून्य हो सकता है।)
मिली

जवाबों:


240

मैं सबसे पहले मानता हूँ कि जावा बहुत क्रियात्मक हो सकता है, लेकिन मुझे नहीं लगता कि यह अनुचित है:

JOptionPane.showMessageDialog(null, "My Goodness, this is so concise");

यदि आप सांख्यिकीय रूप से आयात javax.swing.JOptionPane.showMessageDialogकरते हैं:

import static javax.swing.JOptionPane.showMessageDialog;

यह और कम हो जाता है

showMessageDialog(null, "This is even shorter");

34
वर्बोसिटी में कुछ भी गलत नहीं है। वास्तव में, मैं समझता हूं कि इसकी एक ताकत है।
MRE

14
@ मुझे लगता है कि यह या तो एक मजाक है या आप "वाचालता" को गलत समझ रहे हैं?
डोनल

36
@ जब तक आपको एक सचिवीय नौकरी में संक्रमण के लिए टाइपिंग अभ्यास की आवश्यकता नहीं होती है, मैं नहीं देखता कि वाचालता वांछनीय कैसे है।
डोनल

5
@ Dónal जब कोई सरल चीज़ काम करने के लिए कोड का एक पूरा पृष्ठ लेती है, तो यह वास्तव में लोगों के लिए बहुत सारी अतिरिक्त नौकरियां पैदा करता है! :)
एवगेनी सर्गेव

5
@ दूसरे संस्करण का उपयोग करने के लिए, आपको अपने आयात में निम्नलिखित जोड़ने की आवश्यकता हैimport static javax.swing.JOptionPane.showMessageDialog
Dónal

38

यह मानने के लिए कि आपके पास पहले से ही JFrame है:

JOptionPane.showMessageDialog(frame, "thank you for using java");

देखें जावा ट्यूटोरियल: संवाद बनाने के लिए कैसे
देखें JavaDoc


4
nullयदि आपके पास JFrameउपलब्ध नहीं है तो पहला तर्क हो सकता है।
आकर्षित नोक

5
नोट (किससे यह चिंता हो सकती है): JOptionPaneहैjavax.swing
एवगेनी सर्गेव

31

यदि आपको "वर्बोसिटी" पसंद नहीं है, तो आप हमेशा अपने कोड को एक छोटी विधि में लपेट सकते हैं:

private void msgbox(String s){
   JOptionPane.showMessageDialog(null, s);
}

और उपयोग:

msgbox("don't touch that!");

24

यहां तक ​​कि झूले को आयात किए बिना, आप कॉल को एक में प्राप्त कर सकते हैं, सभी लंबे, स्ट्रिंग हो सकते हैं। अन्यथा बस स्विंग आयात और सरल कॉल का उपयोग करें:

JOptionPane.showMessageDialog(null, "Thank you for using Java", "Yay, java", JOptionPane.PLAIN_MESSAGE);

काफी आसान।


6

"SetWarningMsg ()" विधि को कॉल करें और उस पाठ को पास करें जिसे आप दिखाना चाहते हैं।

exm:- setWarningMsg("thank you for using java");


public static void setWarningMsg(String text){
    Toolkit.getDefaultToolkit().beep();
    JOptionPane optionPane = new JOptionPane(text,JOptionPane.WARNING_MESSAGE);
    JDialog dialog = optionPane.createDialog("Warning!");
    dialog.setAlwaysOnTop(true);
    dialog.setVisible(true);
}

या सिर्फ उपयोग करें

JOptionPane optionPane = new JOptionPane("thank you for using java",JOptionPane.WARNING_MESSAGE);
JDialog dialog = optionPane.createDialog("Warning!");
dialog.setAlwaysOnTop(true); // to show top of all other application
dialog.setVisible(true); // to visible the dialog

आप JoptionPane का उपयोग कर सकते हैं। (WARNING_MESSAGE या INFORMATION_MESSAGE या ERROR_MESSAGE)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.