問題タブ [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.
objective-c - ドラッグ ファイルが Sandbox(__CFPasteboardIssueSandboxExtensionForPath) に出くわす
ブラウザ ビューからカスタム ビューへのドラッグ操作を処理しました。ユキヒョウではうまく機能しますが、サンドボックスのあるマウンテン ライオンではうまく機能しません。
私の質問は:
1.このエラーを修正する方法__CFPasteboardIssueSandboxExtensionForPath;ドキュメントを参照しましたが、それについて何も見つかりませんでした.ファイルにアクセスする権限があることを確認しています.
2.なぜpasteboardItems2に値があるのですか?ペーストボードにはURLのみを書き込み、文字列は書き込みません.NSStringタイプとNSUrlタイプの両方からURLを取得できることにうんざりしました! (iFinder からファイルをドラッグしようとすると、url は pasteboardItems にのみ存在し、pasteboardItems2 には存在しません) 理由を知っている人はいますか? 誰かがこの問題を解決するのを手伝ってくれると、最初の問題は自動的に修正されると思います。
cocoa - NSBrowser は NSPasteboard をいっぱいにしますが、ドロップしません
テキスト blob を検索する一連のエントリを持つ NSBroswer があります。ブロブが存在する場合は、
- (BOOL)browser:canDragRowsWithIndexes:inColumn:withEvent:
YES を返します。
これにより、
- (BOOL)browser:writeRowsWithIndexes:inColumn:toPasteboard:
ここでは、次のことを行います。
今出てくるペーストボードのデータ分析(retBOOL:はい)は次のとおりです。
だから私の問題は、これを SimpleText または BBEdit にドラッグしても、何もドロップしないことです。ターゲット ドキュメントのハイライトが表示されません。(注: ドラッグ イメージ ルーチンもあり、ドラッグ イメージが表示されます)
ペーストボードにデータを入力しているように見えるのに、他のアプリにドロップすることを拒否する理由はありますか?
cocoa - NSPasteboard からアイテムを削除する
対象: Mac OS X 10.7+、Xcode 4.3.x
コアのニーズ: ドラッグ/ペーストするとき、1 つのタイプのアイテムを処理し、残りをスーパークラスに渡すことができるようにします。
NSTextView
performDragOperation メソッドを持つ のサブクラスがあります。私がやりたいことは、すべてのファイルドロップをインターセプトして余分なことを行い、他のアイテムがスーパークラスに渡されるようにすることです ( NSTextView
) への呼び出し[super performDragOperation]
ペーストボードから 1 つのアイテムを削除する方法がわかりません。私には2つの選択肢しかないようです:
- すべてのペーストボード項目を自分の textView に挿入する処理を自分で行います。
- アイテムをキャッシュし、ペーストボードをクリアしてから、それらをチェーンに渡す前に元に戻します (私はこのオプションを試しましたが成功しませんでしたが、なぜそれが壊れているのか知っているかもしれません)。
#3のオプションを見逃しましたか?そうでない場合、1 と 2 のどちらをお勧めしますか?
nspasteboard - nspasteboard readObjectsForClasses が爆発する
tableView で簡単なドラッグ アンド ドロップ操作を実装しようとしています。ただし、readObjectsForClasses を使用してペーストボードからデータを取得しようとすると、ランタイム例外が発生します。
"[__NSCFConstantString initWithBytes:length:encoding:]: 認識されないセレクターがインスタンスに送信されました"
これは、問題が発生する私の acceptDrop メソッドです。誰かが私が間違っていることを指摘するのを手伝ってもらえますか.
objective-c - NSPasteboard generalPasteboard は nil を返します
別のプログラム内にプラグインとしてロードされているNSString
内からペーストボードにをコピーしようとしています。NSBundle
何らかの理由で、[NSPasteboard generalPasteboard]
nil が返されます。
私のコードは、Apple のNSPasteboard ドキュメントとNSPasteboard プログラミング ガイドからのものです。
これを引き起こすために私がうっかりしてしまった可能性のあることはありますか?
objective-c - iPhoto または Aperture からのドラッグ アンド ドロップに対応
Finder からファイル/フォルダーを直接ドラッグ アンド ドロップできる ImageView サブクラスを含むアプリを作成しました。
問題は、iPhoto または Aperture からの写真も受け入れるようにしようとしていることです。
どちらPboardType
に登録すればよいですか?
私が現在行っているのは次のとおりです。
何か案は?
cocoa - NSPasteboardデータを使用してアプリケーションを起動する
Finderでファイル、テキスト、画像をアプリケーション(またはDock)にドラッグアンドドロップして起動または呼び出すのと同じように、NSPasteboardデータを使用してアプリケーションを起動(またはAppleEventsを使用して送信)したいと思います。アプリ内のデータ。
LSOpenFromURLSpecのような起動サービス関数はファイルに対してのみ機能し、AppleEventsの任意のパラメーターに対するオプションがあるようですが、これを機能させる方法がわかりませんでした。
もう1つの質問はサンドボックス化可能ですが、それがまだ可能かどうかはわかりません。
ありがとうございました。
macos - NSPasteboard readObjectsForClasses:options:値を2回返します
要点を言えば、次のようになります。
最初のスニペット(AppDelegate):
2番目のスニペット(AppDelegate):
3番目のスニペット(ClipboardUtilitiesクラス):
例を挙げて説明しようとする奇妙な動作に気づきました。
入力
- Cmd+C文字列「A」
- Cmd+C文字列「B」
- Cmd+C文字列「C」
- Cmd+C文字列「D」
defineAndAddToHistoryからの出力
- A
- A
- B
- C
そのため、何らかの理由で最初のアイテムが保持されていることに気づきました...その後、毎回2番目に新しいアイテムが返されます。getClipboardDataNativelyメソッドでobjectsToPaste配列を出力しようとしましたが、これはまだ当てはまります。誰かが私にこの問題にどのように取り組むか、または彼らがそれをどのように解決したかを教えてもらえますか?
PS my ClipboardUtilitiesクラスは、デリゲートを実装していないか、NSObject以外から継承していません。