Java的秘密:使用全螢幕模式 (轉)
的秘密:使用全螢幕
什麼時候會用到全螢幕模式?
也許用到的機會很少,但還是為我們提供了這個的功能。像許多中的列印預覽功能,還有某些文字編輯器中為了獲得更大的編輯畫面,也用到了全螢幕模式,如果你有興趣寫一個像ACDSee這樣的軟體,使用全螢幕模式可以讓看到更大的圖片畫面。
如何使用全螢幕模式?
關鍵是java.awt.*裡面的兩個與顯示裝置有關的類:GraphicsEnvironment和GraphicsDevice。
GraphicsEnvironment為Java應用提供了特定平臺的 GraphicsDevice
和 Font 物件集合。這些GraphicsDevice可以是各種本機和遠端機器的資源,如螢幕、印表機或者是Image Buffer,甚至是Graphics2D繪圖方法的目標物件。
而GraphicsDevice就是指特定的圖形環境了,如螢幕和列印裝置等。這樣,我們就可以用GraphicsDevice來操縱螢幕了。GraphicsDevice提供的setFullScreenWindow()方法就是設定全螢幕用的。
由於GraphicsEnvironment的構造器是受保護的(protected),我們不能直接構造一個
GraphicsEnvironment物件來獲得GraphicsDevice物件。幸好它提供了getLocalGraphicsEnvironment()方法,用來獲得一個GraphicsEnvironment例項:
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
有了GraphicsEnvironment可以getDefaultScreenDevice方法獲得當前的螢幕裝置了:
GraphicsDevice gd = ge.getDefaultScreenDevice();
自己動手體驗一下
有了上面的簡介,寫一個例項來體驗一下吧:
import java.awt.*;
import java.awt.event.*;
import javax..*;
public class FullScreenTest
{
public static void main(String[] args)
{
GraphicsEnvironment ge =
GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice gd = ge.getDefaultScreenDevice();
FullScreenWindow myWindow = new FullScreenWindow();
if ( gd.iullScreenSupported() )
gd.setFullScreenWindow(myWindow);
else
System.out.println("Unsupported full screen.");
}
}
class FullScreenWindow extends JWindow
{
public FullScreenWindow()
{
this.addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent evt)
{
quit();
}
});
}
public void quit()
{
this.dispose();
}
public void paint(Graphics g)
{
g.setFont(new Font("Arial",Font.BOLD,30));
g.setColor(Color.RED);
g.drawString("這是全螢幕模式",100,100);
}
}
如需瞭解更多java全螢幕方面的內容, 請/1.4.1/docs//java/awt/GraphicsDevice.html">參考JDK文件
你也可以/develop/author/netauthor/turbochen/">進入Turbo Chen的Java技術專欄, 看更多的Java的秘密系列文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-998859/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ubuntu螢幕旋轉Ubuntu
- Android 禁止螢幕旋轉Android
- orientationchange 螢幕旋轉事件事件
- mui 控制旋轉螢幕方向UI
- iOS螢幕旋轉解決方案iOS
- windows 10如何把螢幕翻轉過來_win10顯示螢幕翻轉怎麼操作WindowsWin10
- WebRTC本地分享螢幕,錄製螢幕Web
- Swift橫豎屏切換、自動旋轉螢幕、手動旋轉螢幕、鎖定當前螢幕禁止轉屏、橫豎屏頁面跳轉過度、橫豎屏UI適配SwiftUI
- 使用screego自建桌面投影/共享螢幕Go
- 如何在Mac上使用螢幕共享Mac
- 使用瀏覽器錄製螢幕瀏覽器
- 如何將 MacBook 的外接螢幕設定為主螢幕的方法Mac
- win10平板模式螢幕手勢失效怎麼辦_win10平板模式螢幕手勢不能用如何解決Win10模式
- 【轉載】SAP 選擇螢幕中的搜尋幫助
- 電腦螢幕旋轉90度怎麼復原win10 win10螢幕翻轉了怎麼辦Win10
- ios一句程式碼搞定螢幕旋轉iOS
- flutter 啟動螢幕使用 Lottie 動畫Flutter動畫
- 支援字幕的高品質播放器Movist Pro全螢幕播放播放器
- 把selection screen當子螢幕放到普通螢幕上
- 一個安卓螢幕錄製轉 GIF 的批處理安卓
- 電腦螢幕橫過來了怎麼恢復 電腦螢幕橫屏了怎麼轉換
- 螢幕適配
- 【Nano Framework ESP32篇】使用 LCD 螢幕NaNFramework
- 螢幕錄製軟體是怎麼錄製電腦螢幕影片的?
- Scrcpy v1.9可以在螢幕關閉的情況下映象螢幕
- div 螢幕居中的寫法
- iOS中的螢幕導航iOS
- 如何清潔Mac的螢幕Mac
- 全志T113-i開發板適配LVDS螢幕的過程
- 直播商城原始碼,響應式的全螢幕背景圖(主介面背景圖)原始碼
- iOS12螢幕使用時間密碼 iOS12螢幕使用時間密碼忘記了怎麼辦iOS密碼
- FCPX外掛TransDub for Mac(螢幕分離萬花筒轉場)Mac
- Win10系統下怎麼禁止螢幕旋轉Win10
- AutoLayout螢幕適配
- android 螢幕適配Android
- Flutter螢幕適配Flutter
- android 喚醒螢幕Android
- 多螢幕切換
- 螢幕影像渲染原理