問題タブ [nspasteboard]

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 に答える
270 参照

objective-c - kPasteboardTypeFileURLPromise 保持時のエラー処理

私の Mac アプリでは、kPasteboardTypeFileURLPromise をドラッグ アンド ドロップして、ペーストボードとの間でファイル プロミスを取得できるようにする必要があります。

私が理解している限り、各 NSPasteboardItem は、利用可能なタイプに kPasteboardTypeFileURLPromise を持つ必要があります。

ドラッグ先によって処理される NSURL とは異なり、kPasteboardTypeFileURLPromise は、ドラッグ元によって、ドラッグ先によって設定された宛先の場所に書き込まれます。

ただし、ソースが約束を果たせなかった場合、回復のためにユーザー情報を含むエラーを宛先に渡す方法はないようです (例: NSRecoveryAttempterErrorKey など)。

kPasteboardTypeFileURLPromise をドラッグするときのエラー処理のベスト プラクティスは何ですか? ドラッグ元で処理する必要がありますか?

エラーが宛先によって処理されるドラッグされた NSURL と比較して、いくつかの不整合が生じる可能性があります。

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

macos - kPasteboardTypeFileURLPromise ソースの例

kPasteboardTypeFileURLPromise アイテムのドラッグをサポートする Apple のアプリケーションはどれですか?

私は kPasteboardTypeFileURLPromise のドラッグ先を実装しており、信頼できるドラッグ元に対してテストしたいと考えています。

(Finderはドラッグ先の例ですが、ドラッグ元を探しています)

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

macos - NSPasteBoard は、DragAndDrop を介してドックのダウンロード (グリッド ビュー) からアプリのステータスバー アイコンにファイルを取得します。

私が取り組んでいるココア アプリにドラッグ アンド ドロップ機能を実装しました。フォルダー、デスクトップ、またはハード ドライブの特定の場所からアプリのステータス バー アイコンにファイルをドラッグ アンド ドロップすると、アプリはそれを適切に検出し、問題なくファイルを操作できます。まったく。

私が遭遇する問題は、ドック (グリッド ビューで開く) の [ダウンロード] アイコンをクリックし、そこからファイルを選択してステータス バーにドラッグ アンド ドロップすると、アプリがそれをまったく検出しないことです。このシナリオでは、「performDragOperation」は呼び出されません。これは、ダウンロード グリッドが特定の場所ではなく、デスクトップに表示されるダウンロード フォルダーを表しているためだと思います。

これは、ドラッグの種類を登録する場所です。

}

dragEntered メソッドは次のとおりです。

}

どんな助けでも大歓迎です。ありがとうございました。

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

objective-c - ディレクトリでNSOutlineViewドラッグプロミス

NSOutlineViewDataSourceFinder へのドラッグ時にファイル システムに存在しないディレクトリをドラッグできるようにするには、どのように実装しますか? 私は大量のドキュメントを検索して検索して読みましたが、機能する価値のあるものを見つけるのに非常に苦労しました。ファイル システムのようなツリーを管理するカスタム データ ソースを使用します。すべてのアイテムは、そのパスを追跡するクラスのインスタンスです。ファイルとディレクトリをアウトライン ビューから Finder にドラッグできるようにしたいと考えています。

私は持っている:

その実装は、指定さ-outlineView:namesOfPromisedFilesDroppedAtDestination:forDraggedItems:れたパス内にアイテムを書き込みます。これは、項目を Finder にドラッグできるという点で機能しますが、離すと他に何も起こら-...namesOfPromisedFilesDropped...ず、メソッドも呼び出されません。また、

は私の中にあり-awakeFromNibます。はif (extension.length > 0) ...どこかで見つけた例に基づいていましたが、日付が付けられており、ドキュメントには拡張子を返すと書かれているので、それは適切だと思います。個人的には、特にNSOutlineView. ありがとう!

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

objective-c - NSDictionary を NSPasteboard に書き込む

NSData画像の形式、画像のサイズ、および画像の他の属性を含む辞書があります。NSDictionarytoを書くにはどうすればよいNSPasteboardですか?

私は次のようにコードを書きました:

コンパイル後、コンソールに次のメッセージがスローされます。

のインスタンスは にclass __NSDictionaryMは無効ですNSPasteboard -writeObjects:。はプロトコルclass __NSDictionaryMを実装しません。NSPasteboardWriting

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

objective-c - NSAttributedString を NSData に変換するには?

NSAttributedStringペーストボードに書き戻したい があります。

ジェネラル NSPasteboardにはさまざまなタイプがあり、NSAttributedString アタッチメント付きには適合しますNSPasteboardTypeRTFD

ペーストボードに書き込む方法を知っています:

しかし、与えられたNSAttributedString2 つのRTF NSDataからどのように変換するのですか(これは、ペーストボードで読み取り可能な型に適合するはずです)。

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

macos - Mac Mail / TextEdit のやり取りを再現

TextEdit には、Mac Mail アプリからドラッグされたメッセージのこの素晴らしい処理があります — 件名行はハイパーリンクとして転送され、クリックすると元のメッセージが Mail で開きます。アプリで同じことを行う方法はありますか? NSPasteboard ではあまり運がありません。データは NSURL または NSString として転送されないようです。メールメッセージを Microsoft Word にドラッグすると、ファイル URL を介して転送されるため、データが完全に曖昧であるとは思いませんが、ファイル URL は正常に開きません。