我做了很多研究,我查看了很多例子,但我无法弄清楚为什么我的代码无效。我试图使一个窗口全屏(没有工具栏或任何东西,ACTUAL全屏),并一直在玩代码: (来自http://docs.oracle.com/javase/tutorial/extra/fullscreen/exclusivemode.html)
编辑:人们没有得到它。我非常有信心,下面的代码,按照我想要的方式,将帧设置为全屏。它只是不适合我! 告诉我使用.setExtendedState(JFrame.MAXIMIZED_BOTH)并不是我想要的。GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice dev = env.getDefaultScreenDevice();
System.out.println(dev.isFullScreenSupported());
dev.setFullScreenWindow(frame);
我不完全理解代码的作用,但我知道它不会使我的窗口全屏。我已经查看了其他示例,这似乎是这样做的方式。这是我的其余代码(到目前为止,我刚刚开始一个新项目):
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.GraphicsDevice;
import java.awt.GraphicsEnvironment;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
public class Main extends JFrame {
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Main frame = new Main();
frame.setResizable(false);
frame.setUndecorated(false);
frame.setVisible(true);
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice dev = env.getDefaultScreenDevice();
//this returns true
System.out.println(dev.isFullScreenSupported());
dev.setFullScreenWindow(frame);
frame.validate();
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Main() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
}
}