public class Desktop extends Object
Desktop
クラスは、Java アプリケーションが URI
またはファイルを処理するために、ネイティブデスクトップ上に登録された関連付けられたアプリケーションを起動できるようにします。
サポートされる操作には次のものがあります。
mailto
URI を指定して、ユーザーデフォルトのメールクライアントを起動する。このクラスには、これらの操作に対応するメソッドが用意されています。メソッドは、URI やファイルを処理するために、現在のプラットフォームで登録済みの関連付けられたアプリケーションを検索して起動します。関連付けられたアプリケーションがない場合や、関連付けられたアプリケーションを起動できない場合は、例外がスローされます。
アプリケーションは URI またはファイルの種類に対して登録されます。たとえば、"sxi"
ファイル拡張子は、通常 StarSuite に登録されます。関連付けられたアプリケーションの登録、アクセス、および起動のメカニズムは、プラットフォームに応じて異なります。
各操作は、Desktop.Action
クラスで表されるアクションタイプです。
注:アクションが呼び出されて関連付けられたアプリケーションが実行される場合、そのアプリケーションは、Java アプリケーションが起動されたシステムと同じシステムで実行されます。
修飾子と型 | クラスと説明 |
---|---|
static class |
Desktop.Action
アクションの種類を表します。
|
修飾子と型 | メソッドと説明 |
---|---|
void |
browse(URI uri)
URI を表示するために、デフォルトブラウザを起動します。 |
void |
edit(File file)
関連付けられたエディタアプリケーションを起動して、ファイルを編集用に開きます。
|
static Desktop |
getDesktop()
現在のブラウザコンテキストの
Desktop インスタンスを返します。 |
static boolean |
isDesktopSupported()
このクラスが現在のプラットフォームでサポートされているかどうかを判定します。
|
boolean |
isSupported(Desktop.Action action)
このアクションが現在のプラットフォームでサポートされているかどうかを判定します。
|
void |
mail()
ユーザーデフォルトのメールクライアントのメール作成ウィンドウを起動します。
|
void |
mail(URI mailtoURI)
ユーザーデフォルトのメールクライアントのメール作成ウィンドウを起動し、
mailto: URI によって指定されたメッセージフィールドにデータを設定します。 |
void |
open(File file)
関連付けられたアプリケーションを起動してファイルを開きます。
|
void |
print(File file)
関連付けられたアプリケーションの印刷コマンドを使用して、ネイティブデスクトップの印刷機能でファイルを印刷します。
|
public static Desktop getDesktop()
Desktop
インスタンスを返します。一部のプラットフォームでは、Desktop API がサポートされていない場合があります。現在のデスクトップがサポートされているかどうかを調べるには、isDesktopSupported()
メソッドを使用してください。HeadlessException
- GraphicsEnvironment.isHeadless()
が true
を返す場合UnsupportedOperationException
- このクラスが現在のプラットフォームでサポートされていない場合isDesktopSupported()
, GraphicsEnvironment.isHeadless()
public static boolean isDesktopSupported()
getDesktop()
を使用してください。true
、そうでない場合は false
getDesktop()
public boolean isSupported(Desktop.Action action)
アクションがプラットフォームでサポートされている場合でも、そのアクションに対応するアプリケーションがファイルや URI に登録されていないことがあります。たとえば、Desktop.Action.OPEN
アクションはほとんどのプラットフォームでサポートされています。ただし、特定のファイルに対して、それを開くためのアプリケーションが登録されていない場合があります。この場合、isSupported(java.awt.Desktop.Action)
は true
を返しますが、対応するアクションメソッドは IOException
をスローします。
action
- 指定された Desktop.Action
true
、そうでない場合は false
Desktop.Action
public void open(File file) throws IOException
指定されたファイルがディレクトリの場合は、それを開くために現在のプラットフォームのファイルマネージャーが起動されます。
file
- 関連付けられたアプリケーションで開くファイルNullPointerException
- file
が null
の場合IllegalArgumentException
- 指定されたファイルが存在しない場合UnsupportedOperationException
- 現在のプラットフォームが Desktop.Action.OPEN
アクションをサポートしていない場合IOException
- 指定されたファイルにアプリケーションが関連付けられていないか、関連付けられたアプリケーションを起動できない場合SecurityException
- セキュリティーマネージャーが存在する場合に、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合、または AWTPermission("showWindowWithoutWarningBanner")
アクセス権を許可しない場合、または呼び出し側スレッドがサブプロセスの作成を許可されていない場合AWTPermission
public void edit(File file) throws IOException
file
- 編集用に開くファイルNullPointerException
- 指定されたファイルが次である場合: null
IllegalArgumentException
- 指定されたファイルが存在しない場合UnsupportedOperationException
- 現在のプラットフォームが Desktop.Action.EDIT
アクションをサポートしていない場合IOException
- 指定されたファイルにエディタが関連付けられていないか、関連付けられたアプリケーションを起動できない場合SecurityException
- セキュリティーマネージャーが存在する場合に、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合、または SecurityManager.checkWrite(java.lang.String)
メソッドがファイルへの書き込みアクセスを許可しない場合、または AWTPermission("showWindowWithoutWarningBanner")
アクセス権を許可しない場合、または呼び出し側スレッドがサブプロセスの作成を許可されていない場合AWTPermission
public void print(File file) throws IOException
file
- 印刷するファイルNullPointerException
- 指定されたファイルが次である場合: null
IllegalArgumentException
- 指定されたファイルが存在しない場合UnsupportedOperationException
- 現在のプラットフォームが Desktop.Action.PRINT
アクションをサポートしていない場合IOException
- 指定されたファイルに、その印刷に使用できるアプリケーションが関連付けられていない場合SecurityException
- セキュリティーマネージャーが存在する場合に、セキュリティーマネージャーの SecurityManager.checkRead(java.lang.String)
メソッドがファイルへの読み取りアクセスを許可しない場合、またはセキュリティーマネージャーの SecurityManager.checkPrintJobAccess()
メソッドがファイルを印刷するためのアクセス権を許可しない場合、または呼び出し側スレッドがサブプロセスの作成を許可されていない場合public void browse(URI uri) throws IOException
URI
を表示するために、デフォルトブラウザを起動します。デフォルトのブラウザが指定された URI
を処理できない場合、指定されたタイプの URIs
を処理するために登録されたアプリケーションが呼び出されます。このアプリケーションは、URI
クラスで定義されている、URI
のプロトコルとパスによって決まります。
呼び出し元のスレッドに必要なアクセス権がなく、アプレット内から呼び出された場合は、AppletContext.showDocument()
が使用されます。同様に、呼び出し元に必要なアクセス権がなく、Java Web Started アプリケーション内から呼び出された場合は、BasicService.showDocument()
が使用されます。
uri
- ユーザーデフォルトのブラウザで表示する URINullPointerException
- uri
が null
の場合UnsupportedOperationException
- 現在のプラットフォームが Desktop.Action.BROWSE
アクションをサポートしていない場合IOException
- ユーザーデフォルトのブラウザが見つからないか起動できない場合、またはデフォルトのハンドラアプリケーションを起動できない場合SecurityException
- セキュリティーマネージャーが存在し、AWTPermission("showWindowWithoutWarningBanner")
アクセス権を拒否する場合。または呼び出し元スレッドがサブプロセスの作成を許可されず、アプレットまたは Java Web Started アプリケーション内から呼び出されない場合IllegalArgumentException
- 必要なアクセス権を利用できず、URI を URL
に変換できない場合URI
, AWTPermission
, AppletContext
public void mail() throws IOException
UnsupportedOperationException
- 現在のプラットフォームが Desktop.Action.MAIL
アクションをサポートしていない場合IOException
- ユーザーデフォルトのメールクライアントが見つからないか、起動できない場合SecurityException
- セキュリティーマネージャーが存在し、AWTPermission("showWindowWithoutWarningBanner")
アクセス権を拒否する場合、または呼び出し元スレッドがサブプロセスの作成を許可されていない場合AWTPermission
public void mail(URI mailtoURI) throws IOException
mailto:
URI によって指定されたメッセージフィールドにデータを設定します。
mailto:
URI では、「to」、「cc」、「subject」、「body」などのメッセージフィールドを指定できます。mailto:
URI の仕様の詳細は、「The mailto URL scheme (RFC 2368)」を参照してください。
mailtoURI
- 指定された mailto:
URINullPointerException
- 指定された URI が null
である場合IllegalArgumentException
- URI スキーマが "mailto"
でない場合UnsupportedOperationException
- 現在のプラットフォームが Desktop.Action.MAIL
アクションをサポートしていない場合IOException
- ユーザーデフォルトのメールクライアントが見つからないか、起動できない場合SecurityException
- セキュリティーマネージャーが存在し、AWTPermission("showWindowWithoutWarningBanner")
アクセス権を拒否する場合、または呼び出し元スレッドがサブプロセスの作成を許可されていない場合URI
, AWTPermission
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.