当前位置:编程学习 > JAVA >>

修改屏幕分辨率的问题

GraphicsEnvironment environment=GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice device = environment.getDefaultScreenDevice();
DisplayMode displayMode=new DisplayMode(1024,768,16,75);
device.setDisplayMode(displayMode); 
我用如上方法怎么 
Exception in thread "Thread-3" java.lang.UnsupportedOperationException: Cannot change display mode
要怎样才能 改变屏幕的分辨率啊? --------------------编程问答-------------------- 顶一下啊 --------------------编程问答-------------------- 顶一下! --------------------编程问答-------------------- 下面是一个例子。注意,这个程序不能永久的改变分辨率。就像游戏一样,当你切换出来时,系统仍然使用自己的分辨率。

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

/**
 * 修改分辨率
 */
public class TestChangeScreenResolution {

    public static void main(String[] args) {
        GraphicsDevice dev = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();

        JFrame frame = createFullScreenFrame(dev.getDefaultConfiguration());
        dev.setFullScreenWindow(frame);

        if (dev.isDisplayChangeSupported()) {
            DisplayMode mode = new DisplayMode(800, 600, 32, DisplayMode.REFRESH_RATE_UNKNOWN);
            dev.setDisplayMode(mode);
        } else {
            System.out.println("cannot change resolution");
        }
    }

    // 创建一个全屏的 JFrame,上面有一个关闭按钮。
    private static JFrame createFullScreenFrame(GraphicsConfiguration gc) {
        final JFrame frame = new JFrame(gc);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setUndecorated(true);
        frame.setLayout(new FlowLayout());

        JButton button = new JButton("close");
        button.addActionListener(new ActionListener() {

            public void actionPerformed(ActionEvent e) {
                frame.dispose();
            }
        });
        frame.add(button);

        frame.setVisible(true);
        return frame;
    }
}
--------------------编程问答-------------------- 谢谢啦!3楼的例子满足需求 --------------------编程问答-------------------- 强人,顶你个肺啊! --------------------编程问答-------------------- 学习
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,