2014-10-13 3 views
1

Я пытаюсь найти размер экрана и использовать его для измерения окна.Поиск размера экрана

JFrame window = new JFrame(); 
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 
int Width = screenSize.getWidth(); 
int Height = screenSize.getHeight(); 
window.setSize(Width, Height); 
window.setVisible(true); 
window.setTitle("Game"); 
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

Это дает мне следующие ошибки:

Game.java:7: error: cannot find symbol 
     Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 
     ^
    symbol: class Dimension 
    location: class Game 
Game.java:7: error: cannot find symbol 
     Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 
          ^
    symbol: variable Toolkit 
    location: class Game 
2 errors 

Tool дополненный кодом выхода 1

+0

* «Определение размера экрана» * Какой экран? –

ответ

2

ли вы помните импортировать java.awt.Toolkit?

Кроме того, это действительно плохой способ сделать это, это будет затрачиваться под «дополнительным» контентом, которое многие ОС имеют на экране (например, TaskBar для Windows), и будет отображаться под ним.

Вместо этого вы можете использовать JFrame#setExtendedState и передать его JFrame. MAXIMIZED_BOTH, которые максимизируют окно, чтобы оно заполняло всю видимую область приложения.

Теперь, если вы действительно хотите, чтобы окно, чтобы занять весь экран, вы будете иметь взглянуть на Full screen exclusive mode, что принесет это собственные проблемы

Если вы хотите знать, «видимый» размер из экрана (то есть область, какие окна приложения должны появиться в течение), вы могли бы использовать что-то вроде ...

Rectangle bounds = new Rectangle(0, 0, 0, 0); 

GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); 
gd = ge.getDefaultScreenDevice(); 

GraphicsConfiguration gc = gd.getDefaultConfiguration(); 
bounds = gc.getBounds(); 

Insets insets = Toolkit.getDefaultToolkit().getScreenInsets(gc); 

bounds.x += insets.left; 
bounds.y += insets.top; 
bounds.width -= (insets.left + insets.right); 
bounds.height -= (insets.top + insets.bottom); 

который будет возвращать видимую пространство на рабочем столе минус все системы прочее ...

Смежные вопросы