問題タブ [nsopenpanel]

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.

0 投票する
1 に答える
1194 参照

directory - ユーザーが選択したフォルダーを記憶し、Sandbox の下の NSOpenPanel で再度開く

Apple のレビューでは、ユーザーが前回選択したフォルダーをアプリに記憶させる必要があります。しかし、Sandbox の下では作成できません。-setDirectoryURL はサンドボックスでは機能していないようです。私は何をすべきか?ご協力ありがとうございました!

0 投票する
2 に答える
335 参照

cocoa - NSOpenPanel ビュー オプションの強制

openPanel の表示オプションを強制したり、制限したりすることは可能ですか? たとえば、アクティブ化時に openPanel が Cover フロー ビューまたはアイコン ビューのみを表示するようにします。制限できない場合、デフォルト ビューを設定するにはどうすればよいですか?

ありがとう。

-ポール。

0 投票する
2 に答える
1000 参照

macos - NSOpenPanel を使用してフォルダーの場所を取得する remove file://localhost

NSOpenPanel を使用してアプリケーションにフォルダーを設定していますが、これをフォルダー「file://localhost/Users/juan/」のパスとして取得しています

これは私のコードです:

私の質問は、file://localhost なしで「/Users/juan/Desktop/」などの絶対パスを取得するために、どのように、または何をする必要があるかです。

私は本当にポインタに感謝します。

0 投票する
1 に答える
255 参照

cocoa - NSOpenPanel の動作がおかしい

NSOpenPanel を使用して、開いているファイル ページを表示しようとしています。次の 3 つの点を除いて、ほとんどの場合問題なく動作します。

  1. 最初の問題は、サイド バーをクリックすることはできますが、表示されないことです。

  2. 2 つ目の問題は、以前のファイルよりも少ないファイルを含むフォルダーに切り替えると、画面がクリアされず、以前のファイルの一部が表示されたままになっていることです。ただし、それらはクリックできません。

  3. 列ビューに切り替えようとすると、アプリがクラッシュします。しかし、他の 3 つのビューはすべて正常に機能します。

クラッシュログは次のとおりです。

クラッシュ ログには、クラッシュがスレッド 1 で発生したことが示されています。

誰かがそれを修正する方法を知っているかどうか疑問に思っていました。これが私のコードです

}

まったく同じコードを別の XCode プロジェクトに配置しましたが、問題なく動作するため、どこに問題があるのか​​ よくわかりません。ありがとう!

0 投票する
0 に答える
560 参照

cocoa - これは NSOpenPanel のバグですか? インターフェイスが ~1 秒間ハングしますか?

バックグラウンド

-beginWithCompletionHandler:NSOpenPanel を呼び出すと、使用者が開くボタンを押してから約 1 秒後にユーザー インターフェイスが処理されます。

2 つのメッセージ エラー メッセージが出力されます。

*警告: クラス NSWindow のメソッド userSpaceScaleFactor は、10.7 以降では非推奨です。新しいアプリケーションでは使用しないでください。代わりに convertRectToBacking: を使用してください。

と、

WindowServer[90]: CGXDisableUpdate: UI の更新は、アプリケーション「OpenPanelTest」によって 1.00 秒以上強制的に無効にされました。サーバーはそれらを再度有効にしました。

解決策は、代わりにモーダル ウィンドウを実行することのようです (ただし、これは実際には一般的な解決策ではありません!) -beginSheetModalForWindow: completionHandler:、警告 'userSpaceScaleFactor...' が出力され、ユーザー インターフェイスがハングしなくなりました。

私の質問

これはバグですか、それとも何か間違ったことをしているのですか、それとも Xcode の設定が間違っていますか? サンドボックスが有効になっておらず、コード署名も有効になっていません。これは、プレーンなアプリケーションとドキュメントベースのアプリケーションの両方で同じように動作します。Appleに提出することをお勧めしますか? ほとんどすべてのアプリで Open Panels が使用されているため、Google がこれについて事実上何も見つけていないのは奇妙だと思います。

アップデート

サンプル コードは github ( https://github.com/danieljfarrell/AppTest-NSOpenPanel ) で入手できます。

0 投票する
1 に答える
648 参照

objective-c - フォルダーの作成時に NSOpenPanel が使用する既定の名前を変更しますか?

を使用してNSOpenPanelおり、パネルには「新しいフォルダー」ボタンがあります。ボタンをクリックすると、「無題のフォルダ」と表示されます。任意のフォルダ名を設定するにはどうすればよいですか?

これは私が今使っているコードです:

0 投票する
1 に答える
148 参照

macos - サンドボックス化されたアプリで NSRemoteOpenPanel の違いを理解できない

現在、アプリをサンドボックス化しようとしていますが、NSOpenPanel で奇妙な問題が発生しています。現在、NSOpenPanel を表示しようとすると、次のエラーが発生します。

サンドボックスを有効にすると、OS は NSOpenPanel の代わりに NSRemoteOpenPanel を使用し、このクラスは NSOpenPanel から直接継承せず、すべてのメソッドを実装しない可能性があることを説明する他の投稿を読みました。これについて話しているstackoverflowの投稿は次のとおりです。

app-sandboxing を使用した Cocoa アプリの NSOpenPanel でエラーが発生する

これですべて問題ありませんが、サンドボックス化された NSOpenPanel で使用できないメソッドをどのように知ることができるのでしょうか。NSRemoteOpenPanel に関する公開ドキュメントはないようです。