2012-09-20 15 views
6

पर काम नहीं कर रहा है इसलिए मैं उबंटू का उपयोग कर रहा हूं और जब मैं जावा में पूर्णस्क्रीन मोड दर्ज करना चाहता हूं, तो टाइटल बार के बिना पूर्णस्क्रीन विंडो की बजाय एक सामान्य विंडो अधिकतम स्क्रीन आकार के साथ दिखाई देती है। मैं मानता हूं, मैं मुझे यह भी सुनिश्चित नहीं है कि जावा में पूर्णस्क्रीन मोड कैसा दिखना चाहिए, क्योंकि मैंने इसे किसी भी अन्य ओएस पर नहीं देखा है। लेकिन मुझे लगता है कि यह शीर्षक पट्टी के बिना एक स्क्रीन होना चाहिए। कोई और जिसके पास यह समस्या है?जावा फुलस्क्रीन मोड उबंटू

यह वह कोड है जिसका मैं उपयोग करता हूं। ; बहुत सीधा।

public static void main(String[] args) { 
    GraphicsEnvironment env = GraphicsEnvironment 
      .getLocalGraphicsEnvironment(); 
    GraphicsDevice vc = env.getDefaultScreenDevice(); 
    JFrame window = new JFrame(); 
    window.setUndecorated(false); 
    window.setResizable(false); 
    vc.setFullScreenWindow(window); 
} 
+3

क्या vc.isFullScreenSupported() वापसी करता है? – Adam

+0

हो सकता है कि एक और ओएस पर यह कोशिश करते हैं और फिर अपने प्रश्न अपडेट? – JMK

+0

मैं विंडोज 7 पर अपने कोड भाग गया और एक ही घटना दिखाई दिया - विंडो स्क्रीन के पूर्ण आकार, शीर्षक पट्टी के साथ।मुझे लगता है कि यह अपेक्षित व्यवहार है। –

उत्तर

3

Win7 पर, इस कोड (के रूप में @Gilberto ने सुझाव दिया है और एक लाल पैनल जोड़ा मैं सच करने के लिए असज्जित ध्वज सेट) यह ठीक काम करने के लिए लगता है के साथ। यह Ubuntu पर काम नहीं करता है, तो इसका मतलब है कि पूर्ण स्क्रीन मोड असमर्थित है:

import java.awt.Color; 
import java.awt.GraphicsDevice; 
import java.awt.GraphicsEnvironment; 

import javax.swing.JFrame; 
import javax.swing.JPanel; 

public class Main { 
    public static void main(String[] args) { 
     GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment(); 
     GraphicsDevice vc = env.getDefaultScreenDevice(); 
     JFrame window = new JFrame(); 
     JPanel comp = new JPanel(); 
     comp.setBackground(Color.RED); 
     window.add(comp); 
     window.setUndecorated(true); 
     window.setResizable(false); 
     vc.setFullScreenWindow(window); 
    } 
} 
+0

@trashgod हां वास्तव में, मैंने वास्तव में बाहर निकलने की सुविधा नहीं जोड़ा है ;-) –

+0

मैं काम करता हूं, लेकिन मुझे अभी भी शीर्षक पट्टी दिखाई देती है, लेकिन कोई करीबी या आकार बदलने का विकल्प नहीं है। तो यह अच्छा है :) – Jon

+0

@ जोन यह अजीब है। क्या आप वाकई 'झूठी' के बजाय 'setUndecorated (true)' कहलाते हैं। ट्रैशगोड की टिप्पणी के मुताबिक, इसे उबंटू पर भी ठीक तरह से काम करना चाहिए। –

4

उबंटू (और साथ ही शायद अन्य Linuxes) पर यह काम नहीं करता। जावा में पूर्ण स्क्रीन मोड में पूर्ण स्क्रीन शामिल नहीं है लेकिन टूलबार को छोड़ देता है। हमेशा, जो भी आप करते हैं।

मैंने उपरोक्त दो उदाहरणों और आधिकारिक एफएसईएम tutorial के उदाहरणों की कोशिश की और मुझे पता है कि कुछ एप्लिकेशन जावा/स्विंग और पूर्ण स्क्रीन मोड (फ्रीकॉल और ट्रिपलएक्स) का उपयोग कर रहे हैं और कोई भी कार्य/टूलबार क्षेत्रों को कवर करने में सक्षम नहीं था स्क्रीन।

मेरा कॉन्फ़िगरेशन उबंटू 12.10 है या तो ओपनजेडीके या सन-जेआरई 1.7.0_0 9 और या तो यूनिटी या जीनोम। दिलचस्प बात यह है कि जावा कॉल है फुलस्क्रीन समर्थित() सच हो जाता है। इसलिए जावा जेआरई कहते हैं कि पूर्ण स्क्रीन का समर्थन करता है, यह नहीं है।

कुछ संभावित स्पष्टीकरण किसी अन्य question में दिए जा सकते हैं।

0

हालांकि अधिकांश मामलों में यह लागू नहीं हो सकता है, लेकिन मैं इस समस्या के लिए अपना समाधान साझा करना चाहता हूं।

मेरे मामले में, मुझे अक्सर हमारे विश्वविद्यालय संस्थान (मनोवैज्ञानिक परीक्षण) के लिए जावा/स्कैला ऐप्स विकसित करने की आवश्यकता होती है। इस मुद्दे को सर्कंपस करने के लिए हमने अपने प्रयोगात्मक पीसी पर सफ़िश स्थापित करने का निर्णय लिया।

यदि यह समाधान आपकी आवश्यकताओं के लिए लागू है तो आप उबंटू सुविधाओं (सॉफ्टवेयर सेंटर, एपिट्यूट, एपीटी-गेट) के माध्यम से (एक बेहद पुराना) सफ़िश स्थापित कर सकते हैं या - जो मैं पसंद करूंगा - एक अप-टू- मैन्युअल रूप से तारीख sawfish।

अन्य खिड़की और/या डेस्कटॉप प्रबंधकों इसी तरह की सुविधा दे सकता है, लेकिन हम कलाकृतियों का अनुभव है जब हम विकलांग/नष्ट कर दिया पैनल के साथ XFCE या LXDE की कोशिश की।

1

यह धागा बहुत पुराना है लेकिन अभी भी वास्तविक खोज परिणामों में आता है लेकिन गलत उत्तरों के साथ आता है। तो मैं असली असली समाधान पोस्ट करूंगा।

स्विंग पूर्ण स्क्रीन setExtendedState() समारोह के साथ स्थापित किया जाएगा, setFullScreenWindow() समारोह के साथ नहीं!

JFrame myFrame = new JFrame(); 
.... 
myFrame.setExtendedState(MAXIMIZED_BOTH); 

तो u'll सभी बटन और एक सही उपकरण पट्टी ऑप्टिक के साथ एक सजाया पूर्ण स्क्रीन खिड़की है, और यह उबंटू और किसी भी अन्य ओएस के साथ ठीक काम करता है।

+0

हां। यह काम। – ice1000

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