如果有人能指出我正确的方向。 这是我到目前为止的代码。
//UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.setUndecorated(true);//To remove the bars around the frame.
frame.setResizable(false);//resizability causes unsafe operations.
frame.validate();
//actually applies the fullscreen.
GaphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().setFullScreenWindow(frame);
答案 0 :(得分:5)
有三个复杂的例子你可能对oracle教程感兴趣。
您想要使用高性能吗? Java开发中的图形 环境?你一直想要吗? 编程游戏,但你的图像 会动作不够快吗?有你的 幻灯片放映程序无法正常工作 因为你无法控制 用户的显示分辨率?如果你的话 一直问这些问题, 然后是全屏独家模式 可能是在1.4版中引入的API 你在寻找什么。
CapabilitiesTest演示了不同的缓冲功能 可用于它的机器 跑了。
DisplayModeTest显示了一个使用被动的Swing应用程序 渲染。如果是全屏独家 模式可用,它将进入 全屏独家模式。如果显示 它允许模式更改 你可以在显示模式之间切换。
MultiBufferTest进入全屏模式并通过活动渲染循环使用多缓冲。
看看这个:
oracle.com/tutorial/fullscreen
这个:
oracle.com/tutorial/fullscreen/example
以下示例应用程序可以执行您想要的操作:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class DisplayModeChanger extends JFrame {
private GraphicsDevice device;
private static JButton changeDM = new JButton("800X600 @ 32 BIT 60HZ");
private boolean isFullScreenSupported = false;
public DisplayModeChanger(final GraphicsDevice device) {
this.device = device;
setDefaultCloseOperation(EXIT_ON_CLOSE);
changeDM.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
DisplayMode dm = new DisplayMode(800, 600, 32, 60);
device.setDisplayMode(dm);
setSize(new Dimension(dm.getWidth(), dm.getHeight()));
validate();
}
});
}
public void goFullScreen() {
isFullScreenSupported = device.isFullScreenSupported();
setUndecorated(isFullScreenSupported);
setResizable(!isFullScreenSupported);
if (isFullScreenSupported) {
device.setFullScreenWindow(this);
validate();
} else {
pack();
setVisible(true);
}
}
public static void main(String[] args) {
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice defaultScreen = env.getDefaultScreenDevice();
DisplayModeChanger changer = new DisplayModeChanger(defaultScreen);
changer.getContentPane().add(changeDM);
changer.goFullScreen();
}
}