問題タブ [nstableview]

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

objective-c - NSTableView でのスクロール

私はこれをどのように行うかを尋ねているのではなく、「これを何と呼びますか?」に沿っています。

いくつかのカスタム セルを含む NSTableView があります。テーブルを行ごとにスクロールする必要があります。つまり、スクロールバーを上に移動すると一番上の行が消え、下に移動すると一番下の行も消えます-セルの半分を見たくありません.

この種の行動をどのように呼びますか? NSTableView に実装した場合は、いくつかのポインターを共有できますか?

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

objective-c - NSTableView、複数のセルとバインディング

Motion のプロパティ ビューに似たビューを作成しようとしています。

スクリーンショット

各プロパティ オブジェクトには、表示するセルの種類の定義が含まれています。しかし同時に、バインディングを使用して、値が他の場所で変更できるように自動的に更新されるようにしたいと考えています。

私は問題に対していくつかの異なるアプローチを試みました。

  • 複数のセルdataCellForTableColumn:。これにより、すべてのセル タイプに対してレンダリングが適切に行われますが、バインディングが失われます。

  • NSProxy: すべてのメソッドをその背後にある選択したセル タイプに転送すると思われるプロキシ オブジェクトを使用してみましたが、ここでもバインディングが機能しないようです。

以前にこの種の問題を経験した人はいますか? それとも、これはバインディングがうまくいかないケースの 1 つで、自分で重いものを持ち上げる必要がありますか?

乾杯!

0 投票する
5 に答える
5239 参照

cocoa - NSTableView で行を強調表示する方法

アプリケーションに NSTableView があります。今は8列×48行だと言っています。

特定の特定の列を実行して、各セルの値が特定の値より大きいかどうかを確認する関数があります。そうであれば、アプリケーションで行を強調表示したいと思います。

私はいくつかの読書をしましたが、セル/行/または四角形を抽出して色を変更できる関数呼び出しまたはプロセスをまだ探しています。

セルの色を変更する機能と手順は何ですか?

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

binding - フィルター述語を使用して NSTableView で選択された行インデックスを取得する際の問題

これを適切に表現しているかどうかはわかりませんが、基本的にはメイン アプリのデリゲートでこれを行います。

Application *app = [[Application alloc] initWithApplication:fullPath]

Application クラスには、アプリのパスを受け取り、appPath や名前などのプロパティを設定する initWithApplication メソッドがあります。次に、新しい「アプリ」オブジェクトをアプリケーションの NSMutableArray に追加します。

NSArrayController のコンテンツ配列はアプリケーションの NSMutableArray にバインドされ、さまざまなキー (appPath、名前など) が NSArrayController に設定されます。次に、名前の 1 つの列、パスの 1 つの列など、さまざまなプロパティにバインドされたさまざまな列を含むテーブル ビューを作成します。

次に、テーブル ビューで選択されたアプリを起動する起動ボタンがあります。これには、次のコードを使用します。

次に、現在選択されているアイテムのパスへの参照として「app.appPath」を使用します。これはうまくいきます。この問題は、filterPredicate を使用してテーブル ビューのコンテンツをフィルター処理するときに発生します。基本的に、テーブル ビュー内のすべてのアプリを除外し、検索ボックスに入力されたフレーズを名前に含むアプリのみを残します。

上記の方法は、テーブル ビュー内のアイテムのインデックスを取得するため機能しません。また、すべてのアイテムがテーブル ビューにないため、カウントがめちゃくちゃになります。たとえば、アプリケーション配列のインデックス 25 のアイテムである MyApp.app というアプリがあるとします。

上記のコードは、tableView と applications 配列に同じ数のオブジェクトがあるため、うまく機能します。ただし、テーブル ビューのコンテンツを除外すると、オブジェクトの数に違いが生じるため、間違ったアプリが起動されます。

私の説明があまり混乱しないことを願っていますが、説明するのは難しいです. これを回避する方法はありますか?

ありがとう

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

cocoa - RubyCocoa:NSTableViewのサムネイル画像

次のNSTableViewを表示しようとしています。

| サムネイル| ファイル名|

IBでNSTableViewを作成し、それをクラスに委任しました。クラスでは、POC実装を取得するためだけにモデルをバイパスし、データソースデリゲートメソッドを作成しました。それらはテキストセルにうまく入力されます。ただし、現在、最初のセルに画像の小さなサムネイルを含める必要がある段階にあります。

私がやりたいこと(そしてそれはばかげていると確信しています-シンプルです)は画像アイコンをつかむことです-そしてすべてのファイルがjpegであり、サムネイルが埋め込まれていると仮定するのは公正です-そしてそのアイコンを64x64に拡大縮小してテーブルに入れます細胞。サムネイルを生成する方法についてはたくさんのコードがありますが、コードを機能させるためのコードはあまりありません。これが私が持っているものです:

私が取り組んでいるのは、thumbnailImageメソッドを取得して、データソースから返す適切なデータオブジェクトになり得るものを提供するために不足している手順です。

どんな助けでも驚くほどありがたいです。

ところで:IknowIknowIknow、MacRubyを使用する必要がありますが、32ビットCoreDuoでは動作しません。悲しいことに。

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

cocoa - NSDictionaryController がコンテンツ ディクショナリの変更を監視していないようです

簡単なものが欠けているに違いありませんが、tableView を NSDictionaryController にバインドする際に問題が発生しています。これが私の現在のスキームのモデルです:

TableViewColumn --bindsTo-->DictionaryController.arrangedObjects.(値またはキー) --bindsTo-->someClass.someClassMember.aDictionary.

init で aDictionary にエントリを追加して tableView をテストしたところ、正しく表示されました。しかし、別のメソッドがオブジェクトを生成し、それが aDictionary に追加されると、TableView は更新されていないように見えます。また、aDictionary に 2 つのエントリがあることさえ認識していません。考えられることはすべて試しました。私はaDictionaryに直接アクセスしていません....(someClassMemberで)[self aDictionary setValue:forKey:]、および[self setValue:forKeyPath:@"aDictionary"]および同様のバリエーションを試しました。キーは文字列なので、KVC/KVO に準拠する必要があり、someClassMember に「@synthesize」された aDictionary があります。

私は何が欠けていますか?辞書への新しいエントリが tableView に表示されないのはなぜですか?

前もって感謝します

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

cocoa - NSTableView と NSCollectionView の違い

Snow Leopard アプリを開発するためにどの道をたどるかを決めようとしています。まず、明らかな違いを紹介する必要があります。

NSTableViewデータの同じ「要素」(行)のさまざまな部分を表すために複数のデータ列を持つことができ、NSCollectionViewデータのグリッドも表示できますが、すべての行 + 列の組み合わせは独自の要素です。私の目的のために、1 つの列を扱っていると仮定します。

  1. 私が知る限り、NSCollectionViewitem はNSViewすべて同じ次元でなければならない です。また、 とは異なりNSTableView、 collectionview アイテムはNSCollectionView必要に応じて から提供されるのではなく、 にコピーされますdataSource(これについてはよくわかりません。間違っている場合は訂正してください)。

  2. NSTableViewNSCell行の表示をカスタマイズする場合は、s を使用します。NSCellではないので、イベントNSResponderをどのように処理しますか (iTunes の矢印がどのように機能するかのように、セルに何らかのアクセサリを追加したい場合 (ただし、iTunes は Carbon です) NSCell。IB でいくつかのサブクラスが表示されるのを見てきました)それらの兄弟と同等である必要がありますが、オブジェクトを?)NSControlに入れたい場合はどうすればよいですか?)。MySweetViewNSCell

  3. バインディングに関してはどちらもほぼ同じように見えますね。

  4. 最後に、NSCollectionViewその要素のアニメーションでうまく機能するように見えます (たとえば、アイテムの再配置やフィルター処理など)。NSTableViewその行でこれを行うことができますか?

他に考慮すべきことはありますか?

0 投票する
3 に答える
469 参照

objective-c - NSTableView - 2 つのデータソースの切り替え

小さなココア アプリがあり、UI は主に単一の NSTableView で構成されています。ただし、表示したいデータの2つの異なるリストがあり、2つを切り替えるだけです。私の質問は、これを実装する最良の方法は何だと思いますか?

これで、BOOL フラグを使用して、dataSource メソッドで使用される配列を変更できることがわかりました。しかし、リストにはまったく異なるデータ オブジェクトが含まれているため、使用する NSCell クラスも変更する必要があります。次に、テーブルをリロードする必要があります ([table reloadData] はこれをすべて確実にリロードしますか?)。

または、NIB ファイルに 2 つの別個の NSTableView を作成し、それらの可視性を切り替えることもできます...しかし、これはハックのようです。

私は Cocoa についてかなりよく理解していますが、このようなものを検索する方法がよくわかりません。経験豊富な他の開発者がこの問題をどのように解決するのか興味があります。

ありがとう。

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

iphone - ある NSTableView から別の NSTableView にコピーする (コア データ バインディングを使用)

コアデータにバインドされた NSTableView があります。現在、何にもバインドされていない別の NSTableView があります (ただし、必要に応じて変更できます)。

ボタンを押すと、最初のテーブルで現在選択されている行が 2 番目のテーブルにコピーされます (削除されません)。

例えば

前:

最初のテーブル

セカンドテーブル

後:

セカンドテーブル

どうすればこれを行うことができますか?

ありがとう!