2014-03-30 121 views
0

我有一个使用NetBeans在GUI中制作的大型java程序,其中有很多java文件。我已经使用frame.setExtendedState(JFrame.MAXIMIZED_BOTH);,但它不适合我。我真正想要的是当我遇到这个API时,这些项目会被重新调整为全屏。我想知道如何将这个API实现到我的程序中。问题是我是一个新手(我使用Netbeans的GUI大部分程序),我不知道我应该在哪里添加代码来使用这个API如何实现全屏独占模式API

有没有一种简单的方法来做到这一点?哪些不需要我再次制作整个程序?

+0

从这里开始http://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html –

+0

@ HithamS.AlQadheeb我看到这个页面,但事情是,现在我不能去,并再次使程序...是否有一个简单的方法来做到这一点? –

+0

请问你用简单的单词来告诉我这个问题。试着在JFrame中添加JScrollPane,然后添加一个JPanel,然后你可以添加组件到它,它会自动滚动。 –

回答

2

你应该去通过Full Exclusive Mode tutorial。所有这一切都是检查是全屏模式的支持。如果是,那么拿到屏幕设备和setFullScreenWindow(...)。如果不支持,只需使用常规窗口。

看到这个简单的例子

import java.awt.GraphicsDevice; 
import java.awt.GraphicsEnvironment; 
import javax.swing.JFrame; 
import javax.swing.SwingUtilities; 

public class FullWindow extends JFrame { 
    private boolean isFullScreen = false; 
    private GraphicsDevice device; 

    public FullWindow(GraphicsDevice device) { 
     this.device = device; 
     initFullScreen(); 
    } 

    private void initFullScreen() { 
     isFullScreen = device.isFullScreenSupported(); 
     setDefaultCloseOperation(EXIT_ON_CLOSE); 
     setUndecorated(isFullScreen); 
     setResizable(!isFullScreen); 
     if (isFullScreen) { 
      // Full-screen mode 
      device.setFullScreenWindow(this); 
      validate(); 
     } else { 
      // Windowed mode 
      this.setExtendedState(MAXIMIZED_BOTH); 
      this.setVisible(true); 
     } 
    } 

    public static void main(String[] args) { 
     SwingUtilities.invokeLater(new Runnable() { 
      public void run() { 
       GraphicsEnvironment env = GraphicsEnvironment 
         .getLocalGraphicsEnvironment(); 
       GraphicsDevice device = env.getDefaultScreenDevice(); 
       new FullWindow(device); 
      } 
     }); 
    } 
} 
+0

我想知道更多的事情你不介意有更多闲聊了几分钟? –

+0

什么你需要知道吗? –

+0

我们早些时候已经谈过,所以你知道我有什么代码我想知道我在哪里放这个,也是我试图给你发电子邮件,但也许这反映了什么......你最近忙吗? cauz你说过你会帮我在布局中制作java程序,以便它可以工作,但是我之后不能联系你。我只是想知道你是否...... –