クラスDesktop
Desktopクラスでは、様々なデスクトップ機能と対話できます。
サポートされる操作には次のものがあります。
- ユーザー・デフォルトのブラウザを起動して、指定されたURIを表示する。
- オプションの
mailtoURIを指定して、ユーザー・デフォルトのメール・クライアントを起動する。 - 登録済みのアプリケーションを起動して、指定されたファイルを開く、編集する、または印刷する。
このクラスには、これらの操作に対応するメソッドが用意されています。 メソッドは、URIやファイルを処理するために、現在のプラットフォームで登録済みの関連付けられたアプリケーションを検索して起動します。 関連付けられたアプリケーションがない場合や、関連付けられたアプリケーションを起動できない場合は、例外がスローされます。 サポートされている操作および機能の完全なリストは、Desktop.Actionを参照してください。
アプリケーションはURIまたはファイル・タイプに登録されます。 関連付けられたアプリケーションの登録、アクセス、および起動のメカニズムは、プラットフォームに応じて異なります。
各操作は、Desktop.Actionクラスで表されるアクション・タイプです。
ノート: アクションが呼び出されて関連付けられたアプリケーションが実行される場合、そのアプリケーションは、Javaアプリケーションが起動されたシステムと同じシステムで実行されます。
- 導入されたバージョン:
- 1.6
- 関連項目:
-
ネストされたクラスのサマリー
ネストされたクラス -
メソッドのサマリー
修飾子と型メソッド説明voidaddAppEventListener(SystemEventListener listener) SystemEventListenerのサブタイプを追加して、ネイティブ・システムからの通知をリスニングします。voidURIを表示するために、デフォルト・ブラウザを起動します。voidbrowseFileDirectory(File file) fileを含むフォルダを開き、デフォルトのシステム・ファイル・マネージャでそのフォルダを選択します。voidこのアプリケーションが突然終了することを防ぎます。void関連付けられているエディタ・アプリケーションを起動して、ファイルを編集用に開きます。voidこのアプリケーションを突然終了できるようにします。static Desktop現在のデスクトップ・コンテキストのDesktopインスタンスを返します。static booleanこのクラスが現在のプラットフォームでサポートされているかどうかを判定します。booleanisSupported(Desktop.Action action) このアクションが現在のプラットフォームでサポートされているかどうかを判定します。voidmail()ユーザー・デフォルトのメール・クライアントのメール作成ウィンドウを起動します。voidユーザー・デフォルトのメール・クライアントのメール作成ウィンドウを起動し、mailto:URIによって指定されたメッセージ・フィールドにデータを設定します。booleanmoveToTrash(File file) 指定されたファイルをごみ箱に移動します。void関連付けられているアプリケーションを起動してファイルを開きます。voidネイティブ・ヘルプ・ビューア・アプリケーションを開きます。void関連付けられているアプリケーションの印刷コマンドを使用して、ネイティブ・デスクトップの印刷機能でファイルを印刷します。voidremoveAppEventListener(SystemEventListener listener) SystemEventListenerのサブタイプを削除して、ネイティブ・システムからの通知をリスニングします。voidrequestForeground(boolean allWindows) このアプリケーションにフォアグラウンドへの移動をリクエストします。voidsetAboutHandler(AboutHandler aboutHandler) アプリケーションのカスタム「バージョン情報」ウィンドウを表示するハンドラをインストールします。voidsetDefaultMenuBar(JMenuBar menuBar) アクティブなフレームがないときに使用するデフォルトのメニュー・バーを設定します。voidsetOpenFileHandler(OpenFilesHandler openFileHandler) アプリケーションがファイルのリストを開くように要求されたときに通知されるハンドラをインストールします。voidsetOpenURIHandler(OpenURIHandler openURIHandler) アプリケーションがURLを開くように要求されたときに通知されるハンドラをインストールします。voidsetPreferencesHandler(PreferencesHandler preferencesHandler) アプリケーションのカスタム・プリファレンス・ウィンドウを表示するハンドラをインストールします。voidsetPrintFileHandler(PrintFilesHandler printFileHandler) アプリケーションがファイルのリストを出力するように要求されたときに通知されるハンドラをインストールします。voidsetQuitHandler(QuitHandler quitHandler) アプリケーションを終了するかどうかを決定するハンドラをインストールします。voidsetQuitStrategy(QuitStrategy strategy) このアプリケーションの終了に使用するデフォルトの戦略を設定します。
-
メソッドの詳細
-
getDesktop
public static Desktop getDesktop()現在のデスクトップ・コンテキストのDesktopインスタンスを返します。 一部のプラットフォームでは、Desktop APIがサポートされていない場合があります。現在のデスクトップがサポートされているかどうかを調べるには、isDesktopSupported()メソッドを使用してください。- 戻り値:
- デスクトップ・インスタンス
- スロー:
HeadlessException-GraphicsEnvironment.isHeadless()がtrueを返す場合UnsupportedOperationException- このクラスが現在のプラットフォームでサポートされていない場合- 関連項目:
-
isDesktopSupported
public static boolean isDesktopSupported()このクラスが現在のプラットフォームでサポートされているかどうかを判定します。 サポートされている場合、インスタンスを取得するにはgetDesktop()を使用してください。- 戻り値:
- このクラスが現在のプラットフォームでサポートされている場合は
true、そうでない場合はfalse - 関連項目:
-
isSupported
public boolean isSupported(Desktop.Action action) このアクションが現在のプラットフォームでサポートされているかどうかを判定します。アクションがプラットフォームでサポートされている場合でも、そのアクションに対応するアプリケーションがファイルやURIに登録されていないことがあります。 たとえば、
Desktop.Action.OPENアクションはほとんどのプラットフォームでサポートされています。 ただし、特定のファイルに対して、それを開くためのアプリケーションが登録されていない場合があります。 この場合、isSupported(Action)はtrueを返すことがありますが、対応するアクション・メソッドはIOExceptionをスローします。- パラメータ:
action- 指定されたDesktop.Action- 戻り値:
- 指定されたアクションが現在のプラットフォームでサポートされている場合は
true、そうでない場合はfalse - 関連項目:
-
open
public void open(File file) throws IOException 関連付けられているアプリケーションを起動してファイルを開きます。指定されたファイルがディレクトリの場合は、それを開くために現在のプラットフォームのファイル・マネージャが起動されます。
- パラメータ:
file- 関連付けられたアプリケーションで開くファイル- スロー:
NullPointerException-fileがnullの場合IllegalArgumentException- 指定されたファイルが存在しない場合UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.OPENアクションをサポートしていない場合IOException- 指定されたファイルにアプリケーションが関連付けられていないか、関連付けられたアプリケーションを起動できない場合
-
edit
public void edit(File file) throws IOException 関連付けられているエディタ・アプリケーションを起動して、ファイルを編集用に開きます。- パラメータ:
file- 編集用に開くファイル- スロー:
NullPointerException- 指定されたファイルがnullである場合IllegalArgumentException- 指定されたファイルが存在しない場合UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.EDITアクションをサポートしていない場合IOException- 指定されたファイルにエディタが関連付けられていないか、関連付けられたアプリケーションを起動できない場合
-
print
public void print(File file) throws IOException 関連付けられているアプリケーションの印刷コマンドを使用して、ネイティブ・デスクトップの印刷機能でファイルを印刷します。- パラメータ:
file- 印刷するファイル- スロー:
NullPointerException- 指定されたファイルがnullである場合IllegalArgumentException- 指定されたファイルが存在しない場合UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.PRINTアクションをサポートしていない場合IOException- 指定されたファイルに、その印刷に使用できるアプリケーションが関連付けられていない場合
-
browse
public void browse(URI uri) throws IOException URIを表示するために、デフォルト・ブラウザを起動します。 デフォルトのブラウザが指定されたURIを処理できない場合、指定されたタイプのURIsを処理するために登録されたアプリケーションが呼び出されます。 このアプリケーションは、URIクラスで定義されている、URIのプロトコルとパスによって決まります。- パラメータ:
uri- ユーザー・デフォルトのブラウザで表示するURI- スロー:
NullPointerException-uriがnullである場合UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.BROWSEアクションをサポートしていない場合IOException- ユーザー・デフォルトのブラウザが見つからないか起動できない場合、またはデフォルトのハンドラ・アプリケーションを起動できない場合- 関連項目:
-
mail
public void mail() throws IOExceptionユーザー・デフォルトのメール・クライアントのメール作成ウィンドウを起動します。- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.MAILアクションをサポートしていない場合IOException- ユーザー・デフォルトのメール・クライアントが見つからないか、起動できない場合
-
mail
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:URI- スロー:
NullPointerException- 指定されたURIがnullである場合IllegalArgumentException- URIスキームが"mailto"でない場合UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.MAILアクションをサポートしていない場合IOException- ユーザー・デフォルトのメール・クライアントが見つからないか、起動できない場合- 外部仕様
- 関連項目:
-
addAppEventListener
public void addAppEventListener(SystemEventListener listener) SystemEventListenerのサブタイプを追加して、ネイティブ・システムからの通知をリスニングします。 SystemEventListenerのサブタイプが現在のプラットフォームでサポートされていない場合、効果はありません。- パラメータ:
listener- listener- 導入されたバージョン:
- 9
- 関連項目:
-
removeAppEventListener
public void removeAppEventListener(SystemEventListener listener) SystemEventListenerのサブタイプを削除して、ネイティブ・システムからの通知をリスニングします。 SystemEventListenerのサブタイプが現在のプラットフォームでサポートされていない場合、効果はありません。- パラメータ:
listener- listener- 導入されたバージョン:
- 9
- 関連項目:
-
setAboutHandler
public void setAboutHandler(AboutHandler aboutHandler) アプリケーションのカスタム「バージョン情報」ウィンドウを表示するハンドラをインストールします。AboutHandlerをnullに設定すると、デフォルトの動作に戻ります。- パラメータ:
aboutHandler-AboutHandler.handleAbout(AboutEvent)メッセージに応答するハンドラ- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_ABOUTアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
setPreferencesHandler
public void setPreferencesHandler(PreferencesHandler preferencesHandler) アプリケーションのカスタム・プリファレンス・ウィンドウを表示するハンドラをインストールします。PreferencesHandlerをnullに設定すると、デフォルトの動作に戻ります- パラメータ:
preferencesHandler-PreferencesHandler.handlePreferences(PreferencesEvent)に応答するハンドラ- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_PREFERENCESアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
setOpenFileHandler
public void setOpenFileHandler(OpenFilesHandler openFileHandler) アプリケーションがファイルのリストを開くように要求されたときに通知されるハンドラをインストールします。- 実装上のノート:
- macOSの場合、Javaアプリケーションがバンドルされたアプリケーションで、
CFBundleDocumentTypes配列がInfo.plistに存在する場合にのみ、通知が送信されることに注意してください。Info.plistの詳細については、Apple Developer Documentationを確認してください。 - パラメータ:
openFileHandler- handler- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_OPEN_FILEアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
setPrintFileHandler
public void setPrintFileHandler(PrintFilesHandler printFileHandler) アプリケーションがファイルのリストを出力するように要求されたときに通知されるハンドラをインストールします。- 実装上のノート:
- macOSの場合、Javaアプリケーションがバンドルされたアプリケーションで、
CFBundleDocumentTypes配列がInfo.plistに存在する場合にのみ、通知が送信されることに注意してください。Info.plistの詳細については、Apple Developer Documentationを確認してください。 - パラメータ:
printFileHandler- handler- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_PRINT_FILEアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
setOpenURIHandler
public void setOpenURIHandler(OpenURIHandler openURIHandler) アプリケーションがURLを開くように要求されたときに通知されるハンドラをインストールします。 ハンドラをnullに設定すると、別のハンドラが設定されるまで、すべてのOpenURIHandler.openURI(OpenURIEvent)リクエストがエンキューされます。- 実装上のノート:
- macOSの場合、Javaアプリケーションがバンドルされたアプリケーションで、
CFBundleDocumentTypes配列がInfo.plistに存在する場合にのみ、通知が送信されることに注意してください。Info.plistの詳細については、Apple Developer Documentationを確認してください。 - パラメータ:
openURIHandler- handler- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_OPEN_URIアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
setQuitHandler
public void setQuitHandler(QuitHandler quitHandler) アプリケーションを終了するかどうかを決定するハンドラをインストールします。 ハンドラにワン・ショットQuitResponseが渡され、終了を取消または続行できます。 ハンドラをnullに設定すると、すべての終了リクエストがデフォルトのQuitStrategyを直接実行します。- パラメータ:
quitHandler- アプリケーションが終了するように要求されたときに呼び出されるハンドラ- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_QUIT_HANDLERアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
setQuitStrategy
public void setQuitStrategy(QuitStrategy strategy) このアプリケーションの終了に使用するデフォルトの戦略を設定します。 デフォルトでは、SYSTEM_EXIT_0が呼び出されます。- パラメータ:
strategy- このアプリケーションをシャットダウンする方法- 導入されたバージョン:
- 9
- 関連項目:
-
enableSuddenTermination
public void enableSuddenTermination()このアプリケーションを突然終了できるようにします。 このメソッドをコールして、アプリケーションの状態が保存され、通知を終了する必要がないことを示します。 アプリケーションを終了可能にしておくと、終了を求められたときにアプリケーション内で再ページングを回避することで、ユーザー・エクスペリエンスが向上します。 ノート: 突然終了を有効にすると、QuitHandlerに通知したり、シャットダウン・フックを実行したりすることなく、アプリケーションを終了できます。 たとえば、ユーザーが開始したCmd-Q、ログアウト、再起動または停止リクエストは、アプリケーションの"kill -KILL"を効果的に行います。- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_SUDDEN_TERMINATIONアクションをサポートしていない場合- 導入されたバージョン:
- 9
- 関連項目:
-
disableSuddenTermination
public void disableSuddenTermination()このアプリケーションが突然終了することを防ぎます。 このメソッドをコールして、アプリケーションが未保存の状態であり、通知なしで終了できないことを示します。- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_SUDDEN_TERMINATIONアクションをサポートしていない場合- 導入されたバージョン:
- 9
- 関連項目:
-
requestForeground
public void requestForeground(boolean allWindows) このアプリケーションにフォアグラウンドへの移動をリクエストします。- パラメータ:
allWindows- このアプリケーションのすべてのウィンドウをフォアグラウンドに移動するか、最上位のウィンドウのみに移動するか- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_REQUEST_FOREGROUNDアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
openHelpViewer
public void openHelpViewer()ネイティブ・ヘルプ・ビューア・アプリケーションを開きます。- 実装上のノート:
- Mac OSの場合、ヘルプ・ブックがアプリケーション・バンドルに追加され、Info.plistにCFBundleHelpBookFolderで登録されている場合は、ネイティブ・ヘルプ・ビューア・アプリケーションが開きます
- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_HELP_VIEWERアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
setDefaultMenuBar
public void setDefaultMenuBar(JMenuBar menuBar) アクティブなフレームがないときに使用するデフォルトのメニュー・バーを設定します。- パラメータ:
menuBar- 他のフレームがアクティブでないときに使用- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.APP_MENU_BARアクションをサポートしていない場合- 導入されたバージョン:
- 9
-
browseFileDirectory
public void browseFileDirectory(File file) fileを含むフォルダを開き、デフォルトのシステム・ファイル・マネージャでそのフォルダを選択します。- パラメータ:
file- ファイル- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.BROWSE_FILE_DIRアクションをサポートしていない場合NullPointerException-fileがnullの場合IllegalArgumentException- 指定したファイルまたはその親が存在しない場合- 導入されたバージョン:
- 9
-
moveToTrash
public boolean moveToTrash(File file) 指定されたファイルをごみ箱に移動します。- パラメータ:
file- ファイル- 戻り値:
- ファイルをごみ箱に正常に移動した場合はtrueを返します。
- スロー:
UnsupportedOperationException- 現在のプラットフォームがDesktop.Action.MOVE_TO_TRASHアクションをサポートしていない場合NullPointerException-fileがnullの場合IllegalArgumentException- 指定されたファイルが存在しない場合- 導入されたバージョン:
- 9
-