2010-01-06 9 views

उत्तर

42

पर अपने JFrame पर कॉल करें।

यह विधि केवल तभी कॉल की जा सकती है जब फ्रेम प्रदर्शित नहीं हो सकता है (JavaDoc देखें)।

enter image description here

+0

ठीक है। मैं एक उत्तर निर्धारित कर दूंगा, यह मेरी समस्या का समाधान करता है। धन्यवाद! –

+1

@ पीटर: मैं फ्रेम कैसे प्रदर्शित कर सकता हूं प्रदर्शित नहीं किया जा सकता है? मैंने जेफ्रेम बनाया है और नेटबीन्स का उपयोग करके इसमें कुछ नियंत्रण जोड़े हैं। मुख्य समारोह में मैं कोड: MyJframe फॉर्म = नया MyJframe(); form.setUndecorated (सत्य); form.set दृश्यमान (सत्य); लेकिन यह अपवाद –

+0

@Chan फेंक देता है - क्या MyJFrame कन्स्ट्रक्टर कॉल पैक() है? इससे जेएफआरएएम प्रदर्शित करने योग्य – willcodejavaforfood

1

आप java.awt.Window वर्ग कर सकते हैं। WindowJFrame की तरह है, लेकिन कोई सीमा नहीं है।

ध्यान दें कि Window वर्ग निर्माता एक Frame एक तर्क के रूप (java.awt.Frame) की जरूरत है, लेकिन आप null के लिए सेट कर सकते हैं। आप भी इस तरह यह अनुकूलित करने के लिए Window वर्ग का विस्तार कर सकते हैं:

public class MyWindow extends Window{ 
    public MyWindow(){ 
     super(null); // creates a window with no Frame as owner 
     setBounds(x, y, width, height); 
     setVisible(true); 
    } 
} 

main में, आप MyWindow बजाय Window का एक उदाहरण बना सकते हैं।

public static void main (String[] args) { 
    Window window = new MyWindow(); 
    // Other stuff in main 
} 

मुझे उम्मीद है कि इससे मदद मिलती है!

+0

नोट 2 चीजें: 1) इस प्रश्न में 'स्विंग' टैग लागू है। 2) स्विंग एक 'JWindow' प्रदान करता है। यदि आप अपना उत्तर हटाते हैं या (अधिमानतः) संपादित करते हैं, तो आप इसके कुछ नीचे वोटों से बच सकते हैं। ;) –

+0

विंडो या ज्विंडो कुछ माउस घटनाओं का समर्थन नहीं करता है और इसमें टास्कबार नियंत्रण नहीं है। –

5

यह कोड बताता है कि आप इसे कैसे प्राप्त कर सकते हैं।

नोट: setUndecorated (सत्य); कन्स्ट्रक्टर में बयान।

जब आप पहले से प्रदर्शित होते हैं तो आप फ़्रेम को अचयनित नहीं कर सकते हैं।

public class MyFrame extends JFrame { 

private JPanel contentPane; 
private JTextField textField; 

/** 
* Launch the application. 
*/ 
public static void main(String[] args) { 

       MyFrame frame = new MyFrame(); 
       frame.setVisible(true); 

} 
/** 
* Create the frame. 
*/ 
public MyFrame() { 
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    setBounds(100, 100, 450, 300); 
    contentPane = new JPanel(); 
    contentPane.setBackground(Color.ORANGE); 
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); 


    /* important Statement */ 
    setUndecorated(true); 
} 

}

Frame without Border

0

उपयोग विधि frame.getContentPane(); यह विधि किसी भी फ्रेम की सामग्री के अंदर वापस आती है। लेकिन आपको इसे जेपीनल में डालने की ज़रूरत है। जेपीएनएल का उपयोग करके प्रिंटयूआई जेएफआरएएम नहीं ....

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