問題タブ [nstablecellview]

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 投票する
2 に答える
612 参照

objective-c - カスタマイズされた NSTableCellView の IBOutlet が null です

がありNSTableView、そのデータ ソースとデリゲートが設定されています。セルをカスタマイズしたいので、ライブラリからビューベースのセル ビューをドラッグしました。次に、特別なセルを完全に制御するために、ServiceCellから継承するクラスを作成しました。NSTableCellViewその後、nib ファイルからセル クラスにコントロール ドラッグして、セル内IBOutletの画像とテキスト フィールドのプロパティを作成します。

NSTableView のデリゲート メソッドでは、次のように記述しました。

ご覧のとおり、テキスト フィールドは null です。しかしmakeViewWithIdentifier:、Interface Builder でセルを見つけて、アプリ ウィンドウにセルを表示しました。値を設定できないのはなぜですか?

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

objective-c - 編集プロセス中にビューベースのテーブルビューの外観を変更するには?

Mac OS X 用の最初のアプリを開発しています。これにより、テーブルビューのコンテンツを編集でき、Things アプリでセルがどのように編集されるかの動作を再現したいと考えています。次のように動作するはずです。セルをダブルクリックすると、セルの内容の高度な編集が開始されます。問題は、ビューベースのテーブルビューにこれを実装する方法がわからないことです。

ここに画像の説明を入力

私はすでに Mac 用の Table View Programming Guide を読み、UWDC'11 のセッション 120 でビュー ベースの tableview のカスタマイズについて見ましたが、あまり役に立ちませんでした。

何らかの方法で編集イベントを追跡し、編集開始直後にセルのプロトタイプを標準のものからより高度なものに変更する必要があると思います。サブクラス化とセルのプロトタイプの両方を使用して、セルの外観を変更する方法を知っています。しかし、編集プロセス中にセルのビューを変更する方法がわかりません。

とにかく、標準の NSTableView を使用してこの種のカスタム コントロールを作成するのは正しいことですか?

このアプリでは Core Data、NSArrayController、および Cocoa Bindings を使用していることに注意してください。

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

cocoa - NSTableView: セル内のテキストのサイズを正しく変更する方法

NSTableView (ビュー ベース モード) のフォント サイズを大きくして、アプリの何らかのプレゼンテーションで読みやすくする必要があります。

フォントの変更は、次の範囲内で正常に機能します- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row

また、rowHeight を- (CGFloat) tableView:(NSTableView *)tableView heightOfRow:(NSInteger)rowで更新します。これも機能します。

(正しい高さを決定するもっとエレガントな方法があるかもしれません)

さて、ここに私の問題があります。フォントが変更されているのがわかります。また、rowHeight が変更されていることもわかります (別の行の色を使用しているため、見やすくなっています)。しかし、セル内のテキストは元の高さ (おそらく 17 ピクセル) に切り詰められているように見えるため、フォント サイズを大きくすると、書き込みの上部のみが表示され、次に空白が表示され、次の行の上部が再び表示されます。 .

私にとっては、一部のビューが NSTableViewCell を古い高さにクリップしているように見えます...私はすでにフレームと境界を異なる値に設定して遊んでいましたが、これは何も変更しませんでした:

私はここでちょっと迷っています...単純なものが欠けていると思いますが、どこを見ればいいのかわかりません...

ありがとう、ジャン

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

macos - テーブルセルビューでコンセントを接続するには?

ビューベースのテーブルを使用しており、セル ビュー内の要素のアウトレットを作成したいと考えています。コンセントを接続できません...常にnilです。

具体的にはNSProgressIndicator、表のセルに があり、コードで操作したいと考えています。

これが私がこれまでに持っているものです:

のサブクラスを作成NSTableViewし、対応するアウトレット プロパティを設定しました。

そして、ペン先にカスタムクラスを設定しました。既存のものはドロップダウン経由NSTableCellViewで置き換えられます。MyTableCellView

この時点で、いくつかの観察:

  • Ctrlプログレス インジケータを+クリック アンド ドラッグしてこのアウトレットに接続すると、表示されません。ここに画像の説明を入力 ここに画像の説明を入力

  • 同様に、Ctrlアシスタント エディターを使用してプログレス インジケーターを +クリックしてドラッグしようとすると、バインディングを介してのみプロパティに接続できます。これは有効なアウトレットとして認識されません。ここに画像の説明を入力

  • ただし、このアウトレットはサイドバーに表示され、存在しないという警告が表示されます。ここに画像の説明を入力

  • 利用されていることが分かりMyTableCellViewます。ブレークポイント オンはawakeFromNibこれを確認し、 であることを確認し_myProgressIndicatorますnil

これはサンドボックス プロジェクトであり、私が説明した以上のものはほとんどありません。

SO、コードからこの進行状況インジケーターにアクセスするにはどうすればよいですか?

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

cocoa - NSTableView のセルとして使用されている NSView の自動レイアウト

NSTableViewThingsがレイアウトを行う方法と同様 のものを構築しようとしています。Things 2.0 -- (c) CulturedCode

彼らがやっていることはNSTableView、カスタム描画されたを使用していると思いますNSTableCell-または、おそらくそれはNSSegmentedControl. NSTableCellルートを下ろうとしています。をサブクラス化し、カスタム セルを描画しようとしましたNSTableCellView(これはすべてテスト用の init メソッドにあります)。

かなり自明のようですが、実際には機能しません。制約を満たすことができないというエラーが発生します。サブクラス内で autolayout を使用することはできませんNSTableCellViewか?

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

cocoa - ビューベースの NSTableView 内の自動レイアウト

行を作成する NSTableView (ビューベース) があります。

この行はいくつかのサブビューを作成し、いくつかの制約を割り当てます。

実際に制約を編集しようとすると、楽しみが始まります..viewWithBackgroundは、背景を設定する空のNSViewです。制約が |[viewWithBackground]| の場合 水平方向と垂直方向の両方で、期待される結果が得られます-緑色の行。これを最も基本的な |-[viewWithBackground]-| に変更すると、明らかに予期しない結果が得られます。赤い行が表示され、緑色のビューの兆候はありません!

ここで実行する必要がある追加の手順はありますか? 私の目標は、viewWithBackground を実際には少し小さいビューにして、行間の「ギャップ」とテーブル ビューの端からの間隔を偽造することです。

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

cocoa - NSTextField と画像の配置

NSTextField と NSImageView を揃えようとしています。現在のコードは以下のとおりです。NSTextFieldCell のサブクラス化 (SO でここにあります)、テキスト フィールドのフレームのいじり、制約の微調整など、さまざまなアプローチを試しましたが、取得できません。下のスクリーンショットのように..

また、ラベルにフォントを適用しない場合、配置が期待どおりに機能することも発見しました。画像と垂直方向に配置されます。

したがって、問題は、a) 世界でフォントを適用すると位置合わせが台無しになる理由、および b) これを回避するにはどうすればよいか、理想的には実行時にフォントを変更した場合に適応する動的な方法で..

ここに画像の説明を入力