問題タブ [nscell]

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

cocoa - tableView imageCell の画像をリセットします セルがぼやけています

NSTableViewセルのカーソル「ロールオーバー」中に「情報」アイコンを表示しようとしています。セルの画像のコピーを取得し、その上に「情報」アイコンを描画し、セルにこのコピーで setImage を指示しています。アイコンを描画するだけで拡大縮小され、テーブル内の画像のサイズが異なるため、すべてのアイコンが同じサイズになるわけではありません。正しいサイズのアイコンのスケーリングまたは配置に問題はありません。

私の問題は、置き換えられた画像がわずかにぼやけており、よく見るとエッジが鮮明ではないことです。エッジがないため、mouseEntered が発生して画像が置き換えられたときに、わずかに「動いている」ように見えます。

lockFocusで使用しない多くの描画テクニックNSImage( .draw での描画CGBitmapContext、またはCIFilter合成の使用) を試しましたが、同じ結果が得られました。

描画が予測できないように見えるので、を使用しています。どこかで読んだNSTableViewのですが、どこか思い出せません。preparedCellAtColumnwillDisplayCell

ここに私のpreparedCellAtColumn方法があります:

[これは scott stevenson による同封のスケーリング方法です]

10.6 をサポートする必要があるため、新しい groovy ライオン メソッドを使用できません。

ご検討いただきありがとうございます...

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

iphone - Textfield UITableViewCell と textfieldShouldReturn が一致していません

を選択しcellて何かを書き込んだ後、キーボードの戻る/次へのボタンを押して、単に次の に移動しcellたいと思います。それが私が達成しようとしていることです。しかしbreakpoint、メソッドに a を配置した後textfieldShouldReturn、return/next キーを押してもアクセスされないことがわかりました。誰かが理由を説明できますか?

ありがとうございました。

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

cocoa - NSTableViewの行をダーティとしてマークする

NSTextFieldCellをサブクラス化して、カスタムの描画と強調表示を行いました。私は基本的にLionMailにあるものと同様のセルでテーブルを作成していますが、私のコードはSnowLeopardをターゲットにしています。私が遭遇している問題はこれです:

  1. ユーザーがセルを選択します(私のセルはカスタムハイライトを描画します)
  2. ユーザーは、選択したセルと以前に表示されていたすべてのセルをスクロールして、テーブルに表示されないようにします
  3. ユーザーが選択されていないセルを選択します(新しいセルが強調表示されます)
  4. ユーザーは、最初に選択されたセルがテーブルに再び表示されるようにテーブルをスクロールします

最後のステップは、問題が発生する場所です。最初に選択されたセルは、選択されていなくても再描画されません。その結果、セルが選択されているように見えます。

選択されていないセルをダーティとしてマークする必要があることを通知するには、何をする必要がありますか?

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

objective-c - 開示三角形の方向を変更する

開示三角形の方向をプログラムで変更するにはどうすればよいですか? Interface Builder では、値 "Control -> Layout" を "Left to Right" または "Right to Left" から変更することで可能です。

NIB ファイルの差分を作成しました。唯一の変更点はNSCellFlags2.

これはどこかに文書化されていますか?

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

cocoa - iTunes/Finder/メールスタイルのテーブルビューを作成するにはどうすればよいですか

コンテンツ リストを Finder ウィンドウの左ペインのスタイルで作成したいと考えています (同様にメール/iTunes/etc のスタイルで)。現在、私のNSTableView/NSOutlineView実装は少し基本的なものに見えます。

Apple の外観を模倣するのに役立つチュートリアルはありますか? 特に、ヘッダー行や色などに気を配っています。

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

xcode4 - TableViewCell が正しく更新されない

セルを構成するために、この tableviewcell.m があります。テキストと情報を正しく構成していますが、他の情報に従って色を更新することはできません。コードは次のとおりです。

色ですが、まったく機能していません。if ステートメントが完全に無視されているように思えます。誰かが理由を理解したり、より良いプログラミングアプローチを提案したりできますか?

これが行コードのセルです。それらは同じファイルにないため、役立つかどうかはわかりません。ここでは、tableviewcell ファイルのみを参照しています。

どうもありがとう !

テキストを取得するコードは次のとおりです。

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

objective-c - CocoaのNSMatrixでNSCellの列と行を取得する

NSMatrixとNSCellが与えられた場合、セルがマトリックスのどの行と列に配置されているかを知るためにマトリックスをクエリする簡単な方法があります。NSActionCellsからアクションメッセージを受け取ったときにこれを知りたいです。

私がそれを行うことができる唯一の方法は、マトリックスの行と列をループしてメッセージ送信者との同等性をチェックするか、セルの位置に基づいてセルにタグを付けることです。これは醜いです。これを行うにはもっと良い方法があると思いますよね?

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

macos - NSButton はカスタム NSCell 内に描画されますが、実際にはクリック可能ではありません

カスタム NSCell サブクラス IconCell を含む NSTableView があります。

IconCell には、画像、テキスト、ボタンの 3 つの要素が含まれています。

これが私の描画コードの簡略版です(closeButtonはボタンです):

描画部分は正常に動作し、次のようなものが生成されます。

セルのスクリーンショット

それが私が欲しいものです。

さらに、ユーザーがセルを操作したときに、次の 2 つのいずれかが発生するようにしたいと考えていますactionA。ユーザーが閉じるボタンをクリックすると、それが行われますactionB

私が抱えている問題は、閉じるボタンが「見えない」ように見えることです-クリックしても動かず(動作中のボタンは押し下げられた状態を表示する必要があります)、一般的にはそうであるかのように動作しますのactionA代わりにトリガーされactionBます。

これは私が2つのアクションを設定する方法です:

私は何を間違っていますか?

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

macos - NSFormで個々のセルの背景色を変更するにはどうすればよいですか?

セルの背景色を個別に設定したいNSForm。NSFormをサブクラス化してオーバーライドすることだと思いました-drawCellAtRow:column:。ただし-drawCellAtRow:column:、セルがフォーカスを受け取ったときにのみ呼び出されます。

私は呼び出しを実験し-setCellBackgroundColorましたNSFormが、それは値ではなく、タイトルの背景を変更します。

私が見つけていないアプローチはありますか?

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

objective-c - 複数の行がある場合は NSCell を展開します

10.7 の Console.app と同じ動作をしたいと思います。

  • 切り捨てられた行には、開示用の三角形が付属しています
  • 三角形をクリック/線をダブルクリック/「Right Array」を押してNSCellを展開し、テキスト全体を表示します

私は NSOutlineView の方法でしたが、「Accessibility Inspector」は、それがアウトライン ビューではなく、NSCell であることを示しています。

行数をキャッチし、特定のイベント (クリック/ダブルクリック/左配列) で、現在の NSCell の高さを変更することが考えられます。

セルにそのような開示用三角形を追加するにはどうすればよいですか? このようなイベントをキャッチするにはどうすればよいですか?