macOS アプリに 2 つのメイン メニューを作成する方法

小石8888

一部の Mac アプリケーションには 2 つのメイン メニューがあることを知っています。
main menumacOS 画面の左上のメニューを意味します。

windowA が表示されると、メイン menuA が表示されます。
アプリケーションのウィンドウ (windowB という名前) をクリックする
と、menuB が menuA に置き換わります。
そして、windowA をクリックすると、メイン menuA が再表示されます。

誰かがこの動作を実装する方法を知っていますか?

ジャン・バティスト・ユネス

各ウィンドウにメニューを関連付ける必要があります。このために、アプリケーションの MainMenu をコピーして、適切なウィンドウ コントローラ シーンに貼り付けることができます。次に、シーン内のウィンドウの接続を選択し、アイテム「メニュー」をシーンの新しいメニューにリンクします。すべてのウィンドウ コントローラー/ウィンドウに対してこれを繰り返します。

次に、コードを追加する必要があります。新しい Window クラスを作成します。

class Window : NSWindow {
    override func becomeKey() {
        NSLog("become2")
        NSApplication.shared().mainMenu = self.menu
        super.becomeKey()
    }
}

次に、各ウィンドウのクラス プロパティをこの Window クラスに設定します。

その後、必要に応じてメニューを編集できます。各メニュー項目を適切なファースト レスポンダー アクションに再接続する必要があることに注意してください...

それが最善の解決策であるかどうかはわかりませんが、私にとってはうまくいきます。実際、NSWindow をこのようにサブクラス化する必要がある理由がよくわかりません...

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

MacOS BigSur用のメニューバーSwiftUIアプリを作成する方法

分類Dev

MacOS用のNW.jsアプリでアプリケーションメニューを有効にする

分類Dev

SwiftUI:macOSアプリで編集メニューを実装する方法

分類Dev

Swift-MacOS ManuBarアプリのAppDelegateクラスの外にメニューバーアイテムを作成することは可能ですか?

分類Dev

Swift-MacOS ManuBarアプリのAppDelegateクラスの外にメニューバーアイテムを作成することは可能ですか?

分類Dev

ドロップダウンメニューで2つの列を作成する方法

分類Dev

ドロップダウンメニューで2つの列を作成する方法

分類Dev

1PasswordのようなmacOSメニューバーアプリを作成する

分類Dev

フラッターアプリのメインアイコンを長押ししたときに実行する2つまたは3つの項目のメニューを表示する方法はありますか?

分類Dev

Flutterで2つのGridView要素のスイッチアニメーションを作成する方法

分類Dev

メインメニューに2つのボタンを作成しようとしています

分類Dev

MacOSのプライマリパーティションに2番目のクローンを作成する方法

分類Dev

ionic2アプリケーションのサイドナビゲーションパネルメニューにアイコンを設定する方法

分類Dev

macOSプロンプトメニューアニメーションを無効にする(または速度を追加する)方法は?

分類Dev

MicrosoftWebアプリケーションのスタイルを持つWPFでメニューを作成する方法

分類Dev

wpfで2つのアニメーションの間に時間遅延を作成する方法

分類Dev

2つの動的ドロップダウンメニューを作成します

分類Dev

行の2つのアイテムのスワップをアニメーション化する方法は?

分類Dev

ionic2: サイドメニューのアプリでユーザーの状態を管理する方法は?

分類Dev

sweetalert2:リダイレクト中にローダーアニメーションを作成する方法

分類Dev

1つのポイントから最後の場所まで2つのビューをアニメーション化する方法

分類Dev

AngularJSを使用してSharepointアプリのクイック起動メニューを作成する-いくつかのオプションをインデントし、メニューヘッダーのクリックを無効にする方法

分類Dev

2つのアクティビティ間でカードフリップのようにアニメーションをフリップする方法は?

分類Dev

サイドメニューのイオン2でアンダースコアを削除する方法

分類Dev

Aurelia:いくつかのドロップダウンメニュー項目を使用してメインメニューを作成する方法

分類Dev

「MovetoDropbox」MacOS X Finderコンテキストメニュー項目を他のアプリに複製するにはどうすればよいですか?

分類Dev

Androidの2つのビューに2つのアニメーションを適用する

分類Dev

セマンティックUIでトップ固定メニューを2行作成する方法

分類Dev

Xamarin.Forms-2つのものを同時にアニメーション化する(プッシュアニメーション)

Related 関連記事

  1. 1

    MacOS BigSur用のメニューバーSwiftUIアプリを作成する方法

  2. 2

    MacOS用のNW.jsアプリでアプリケーションメニューを有効にする

  3. 3

    SwiftUI:macOSアプリで編集メニューを実装する方法

  4. 4

    Swift-MacOS ManuBarアプリのAppDelegateクラスの外にメニューバーアイテムを作成することは可能ですか?

  5. 5

    Swift-MacOS ManuBarアプリのAppDelegateクラスの外にメニューバーアイテムを作成することは可能ですか?

  6. 6

    ドロップダウンメニューで2つの列を作成する方法

  7. 7

    ドロップダウンメニューで2つの列を作成する方法

  8. 8

    1PasswordのようなmacOSメニューバーアプリを作成する

  9. 9

    フラッターアプリのメインアイコンを長押ししたときに実行する2つまたは3つの項目のメニューを表示する方法はありますか?

  10. 10

    Flutterで2つのGridView要素のスイッチアニメーションを作成する方法

  11. 11

    メインメニューに2つのボタンを作成しようとしています

  12. 12

    MacOSのプライマリパーティションに2番目のクローンを作成する方法

  13. 13

    ionic2アプリケーションのサイドナビゲーションパネルメニューにアイコンを設定する方法

  14. 14

    macOSプロンプトメニューアニメーションを無効にする(または速度を追加する)方法は?

  15. 15

    MicrosoftWebアプリケーションのスタイルを持つWPFでメニューを作成する方法

  16. 16

    wpfで2つのアニメーションの間に時間遅延を作成する方法

  17. 17

    2つの動的ドロップダウンメニューを作成します

  18. 18

    行の2つのアイテムのスワップをアニメーション化する方法は?

  19. 19

    ionic2: サイドメニューのアプリでユーザーの状態を管理する方法は?

  20. 20

    sweetalert2:リダイレクト中にローダーアニメーションを作成する方法

  21. 21

    1つのポイントから最後の場所まで2つのビューをアニメーション化する方法

  22. 22

    AngularJSを使用してSharepointアプリのクイック起動メニューを作成する-いくつかのオプションをインデントし、メニューヘッダーのクリックを無効にする方法

  23. 23

    2つのアクティビティ間でカードフリップのようにアニメーションをフリップする方法は?

  24. 24

    サイドメニューのイオン2でアンダースコアを削除する方法

  25. 25

    Aurelia:いくつかのドロップダウンメニュー項目を使用してメインメニューを作成する方法

  26. 26

    「MovetoDropbox」MacOS X Finderコンテキストメニュー項目を他のアプリに複製するにはどうすればよいですか?

  27. 27

    Androidの2つのビューに2つのアニメーションを適用する

  28. 28

    セマンティックUIでトップ固定メニューを2行作成する方法

  29. 29

    Xamarin.Forms-2つのものを同時にアニメーション化する(プッシュアニメーション)

ホットタグ

アーカイブ