「MonoMac/Preferencesウインドウを付ける」の版間の差分

ページの作成:「MonoMacMacのアプリで定番のPreferences(設定画面)を実装する。 ==実装1== ===プロジェクトにPreferencesWindowを追加する=== *「...」
 
48行目: 48行目:
なお、上記の例では[[モーダルウインドウ]]にはなっていないので注意すること。[[モーダルウインドウ]]にしたい場合は下記を参照して書き換える。
なお、上記の例では[[モーダルウインドウ]]にはなっていないので注意すること。[[モーダルウインドウ]]にしたい場合は下記を参照して書き換える。
*[[MonoMac/モーダルウインドウを作成する]]
*[[MonoMac/モーダルウインドウを作成する]]
==実装2==
閉じるたびにDisposeさせた方がいいかも。実装1のように1つのインスタンスを保持している方法だと、前回の画面が途中から再開されたりするため、タブなどを利用している場合はそこから再開になる。好みの問題かもしれない。
<source lang="csharp">
    public partial class AppDelegate : NSApplicationDelegate
    {
        // 〜〜中略〜〜
        partial void ShowPreferencesWindow(NSObject sender)
        {
            using (var preferencesWindowController = new PreferencesWindowController())
            {
                var ret = NSApplication.SharedApplication.RunModalForWindow(preferencesWindowController.Window);
                Console.WriteLine(ret);
            }
        }
    }
</source>


==関連項目==
==関連項目==