當前位置:才華齋>IT認證>JAVA認證>

如何使用Swing編寫全屏程式

JAVA認證 閱讀(3.08W)

也許用到的機會很少,但JDK還是為我們提供了這個的功能。像許多軟體中的列印預覽功能,還有某些文字編輯器中為了獲得更大的編輯畫面,也用到了全螢幕模式,如果你有興趣寫一個像ACDSee這樣的軟體,使用全螢幕模式可以讓使用者看到更大的圖片畫面。

如何使用Swing編寫全屏程式

  如何使用全螢幕模式?

關鍵是.*裡面的兩個與顯示裝置有關的類:GraphicsEnvironment和GraphicsDevice。

GraphicsEnvironment為Java應用程式提供了特定平臺的. GraphicsDevice物件和 Font 物件集合。這些GraphicsDevice可以是各種本機和遠端機器的資源,如螢幕、印表機或者是Image Buffer,甚至是Graphics2D繪圖方法的目標物件。

而GraphicsDevice就是指特定的圖形環境了,如螢幕和列印裝置等。這樣,我們就可以用GraphicsDevice來操縱螢幕了。GraphicsDevice提供的setFullScreenWindow()方法就是設定全螢幕用的。

由於GraphicsEnvironment的構造器是受保護的(protected),我們不能直接構造一個GraphicsEnvironment 物件來獲得GraphicsDevice物件。幸好它提供了getLocalGraphicsEnvironment()方法,用來獲得一個 GraphicsEnvironment例項:

GraphicsEnvironment ge = ocalGraphicsEnvironment();

有了GraphicsEnvironment可以呼叫getDefaultScreenDevice方法獲得當前的螢幕裝置了:

GraphicsDevice gd = efaultScreenDevice();

自己動手體驗一下

  有了上面的簡介,寫一個例項來體驗一下吧:

import r;

import ;

import hics;

import hicsDevice;

import hicsEnvironment;

import eAdapter;

import eEvent;

import dow;

public class FullScreenTest {

public static void main(String[] args) {

GraphicsEnvironment ge =

ocalGraphicsEnvironment();

GraphicsDevice gd = efaultScreenDevice();

FullScreenWindow myWindow = new FullScreenWindow();

if ( llScreenSupported() )

ullScreenWindow(myWindow);

else

tln("Unsupported full screen.");

}

static class FullScreenWindow extends JWindow {

public FullScreenWindow() {

ouseListener(new MouseAdapter() {

public void mousePressed(MouseEvent evt) {

quit();

}

});

}

public void quit() {

ose();

}

public void paint(Graphics g) {

ont(new Font("Arial",,30));

olor();

String("這是全螢幕模式",100,100);

}

}

}