問題タブ [nsapplication]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cocoa - cocoa beginSheet:エラーをスローするdidEndSelector
メインの.xibにシートを読み込んでいます。シートはパネルであり、シートの表示や閉じに問題はありませんが、閉じるとエラーメッセージが表示されます。
これが私のコードです:
cocoa - NSApplication デリゲート: ハイバネート モードからの復帰の決定: - didWakeUp?
私は現在、それが可能かどうか疑問に思っています.iOSのように、OSXが休止状態モードから戻ると、たとえばスリープ状態からMacBookを開くと、どういうわけかデリゲートが呼び出されますか?
私はNSApplication delegates
ここを見ました:Apple NSApplicationDelegate Protocolしかし、役立つものは何も見つかりませんでした。
iOS でこれに最も近いのは、 Apple UIApplicationDelegate Protocol- applicationWillEnterForeground:
で文書化されている可能性があることです。
これを行う方法はありますか?
アップデート
Cocoaでマシンのウェイク+ユーザーのログイン通知を取得する信頼できる方法は? この質問を正確に解決します!
objective-c - 複数のウィンドウを持つOS Xのフルスクリーンアプリ?
通常のウィンドウの動作に加えて、新しいスペースの背景を表示するフルスクリーン アプリを作成したいと考えています。基本的に、ユーザーが全画面表示になるとNSWindow
、アプリ内のすべてが同じサイズのままになり、画面の同じ位置にとどまり、新しいスペースに移動します。これは可能ですか?もしそうなら、そのような振る舞いのドキュメントはどこにありますか?
編集:これはかなり古いことを知っていますが、発見したばかりcustomWindowsToEnterFullScreenForWindow
です。問題を解決するために使用しました。他の誰かがこれを行うことに興味がある場合に備えて、コードを以下に示します。
ただし、これらはNSWindowDelegate
メソッドであるため、必ずウィンドウのデリゲートを設定してください。そうしないと、混乱が生じる可能性があります。
cocoa - モーダルウィンドウ内でモーダルウィンドウを開く方法
このコードは、モーダルウィンドウでボタンが押されたときに呼び出されます。現在のウィンドウは、-(void)showWindow:(id)senderメソッド内で[NSApp runModalForWindow:[selfwindow]]を使用してモーダルになりました。
新しいウィンドウを開くには、次のコードを使用します。正常に動作しますが、押されたボタンは「クリック」状態のままです。おそらく私は何か間違ったことをしているのでしょう。
ブロックは、クローズメッセージを受信すると、NSWindowControllerのサブクラスによって呼び出されます。ありがとうございました。
objective-c - すでに起動されているアプリケーションを再起動する
Mac OS X用のアプリケーションを作成しましたが、そのためのデスクトップショートカットがあります(を使用して作成ln -s
)。ここで、このショートカットをダブルクリックするたびに、アプリケーションが既に実行されている状態で、何らかのアクションを実行する必要がある機能を追加します(指定されたパスでFinderウィンドウを開くなど)。これはどのように実装できますか?
NSApplication
アプリケーション内にベースの通知のオブザーバーを作成しようとしましたが、建設的なものは何もありませんでした。
誰か助けてもらえますか?
objective-c - beginSheet:modalForWindow:? を使用した後のシートの配置
次のコードで完全に実行されているシートとしてウィンドウを表示したい:
ただし、1 つの小さな問題があります。
- 私はChromium Tabsの実装を使用しており、おそらく Chromium Tabs の内部ロジックに関連している何らかの理由で、シートは私が望む場所よりもやや低く見えるようです... (おそらくそれが考慮されているウィンドウの「境界」として、とにかく...)
どうしたの?どうすれば修正できますか?
objective-c - objc_getProtocol()は `NSApplicationDelegate"に対してNULLを返しますか?
この関数を使用して、プロトコルobjc_getProtocol()
を表す構造体への参照を取得しようとしています。NSApplicationDelegate
ただし、何らかの理由で、これは常にを返しますNULL
。
、、、などの他のプロトコルはNSObject
正常に機能します。NSCoding
NSTableViewDelegate
NSTableViewDataSource
何か特別なことはありますかNSApplicationDelegate
、それとも私は何か間違ったことをしていますか?
objective-c - Cocoa アプリケーションの終了を適切に処理するには?
だから、ここに私の場合があります:
非標準のドキュメント ベースのアプリケーションを開発しており、いずれかのドキュメントに未保存の変更がある場合に終了を中止するシナリオを処理したいと考えています。
私の最初のアイデアは次のとおりです。
- ユーザーがアプリケーションを終了しようとします (
"Quit XXXXX"
メニュー項目または"X"
ボタンをクリックして) - 変更されたドキュメントはありますか?
- いいえの場合: 終了
- YES の場合: 変更されていないドキュメントがあることをユーザーに通知します。彼が続行したい場合は、終了します。そうでなければ、終了をキャンセルします。
そこで、デリゲート方式で行うことにしました。
私の Application delegateでは、次を実装しました。
-windowToClose:
(トリガーNSWindowWillCloseNotification
)applicationShouldTerminate:
applicationShouldTerminateAfterLastWindowClosed:
今、それが私が考えていることです。applicationShouldTerminate:
メソッド内:
NSTerminateNow
変更されたドキュメントが存在しない場合に返すNSTerminateCancel
変更されたドキュメントがある場合に返します。その場合、アラート シートなどをポップアップ表示し、ユーザーが終了したいことを確認したら、[NSApp terminate:nil];
それは正しい方法ですか?
助言がありますか?
objective-c - NSApplicationSupportDirectory が無効です CFStringRef
アプリにプリロードされたフォルダーがあり、アプリが初期化されたらファイルを追加したいので、ファイルを NSApplicationSupportDirectory に保存しようとしています。ファイルの内容を NSLog しようとしているので、実際に機能したかどうかを確認できます。デバッガーから、コンテンツが であることがわかりますが、これは意味がわかりません。誰か?
objective-c - モーダルウィンドウが閉じない
カスタム NSWindowController をモーダル ウィンドウとして実行しています。
まず、次のように示します。
そして、ProgressWindow の NSWindowController 内からそれを却下したいと考えています。そのために、windowDidLoad 関数に次のコードを設定します (テストのためだけに):
予想どおり、2 秒後に testMethod が呼び出されます。メソッドはモーダル ウィンドウを閉じる必要がありますが、それを行う方法が見つからないようです。、、、シート[NSApp stopModal]
にして呼び出してみましたが、何もうまくいかないようです。何も起こらないか、ウィンドウが別の場所で再び開きます。なぜこれが起こっているのかわかりません。初期化コードは一度だけ呼び出されます。[NSApp abortModal]
[self close]
[self.window orderOut:nil];[NSApp endSheet:self.window];
閉め方わかる人いますか???