問題タブ [nstablecolumn]

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

nstablecolumn - NSTableView 自動保存機能で使用される列識別子は、NSCoding プロトコルに準拠する必要があります: (null)

シナリオ:
非表示フラグを切り替える関数に NSTableColumn を渡しています。

列識別子を NSCoding に準拠させるにはどうすればよいですか?

または...これはバグですか?

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

cocoa - Cocoa NSTableView に列を追加するには?

NSTableView にデータを表示したい。列数が指定されていないため (データによっては 1 から ?? のいずれかになる可能性があります)、Interface Builder を使用できません。
したがって、(IB を使用して) テーブルを 1 列に初期化し、その後、必要に応じて新しい列を追加します (その後、不要になった 0 番目の列を削除します)。追加された各列には、一意の識別子を提供します。ここまでは順調ですね。以下に示すように、 tableView(-:viewForTableColumn:row)関数
を実装しますが、 makeViewWithIdentifierはnilを返します。どうしたの ?nilリターン を検出した場合は、適切な識別子を使用してNSTableCellViewのインスタンスを作成します。しかし、データは表に表示されません。何が間違っている可能性がありますか?

コードは次のとおりです(不要な行は削除されています):

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

macos - NSWindow のサイズ変更時にテーブル列のサイズを変更する

私は NSTableView を使用している Cocoa アプリケーションに取り組んでいます。

ここで、アプリケーションをコーナーからドラッグするか、ズーム ボタンをクリックして、ユーザーがウィンドウのサイズを変更または最大化したときに、テーブル ビューの列の幅を自動的にサイズ変更したいと考えています。

どんな助けでも大歓迎です。

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

swift - NSTableView から列と行を選択するにはどうすればよいですか?

NSTableView ベースのビューを作成しています。そして、私は使用しようとしています: そして let selectedRowNumber = tableViewMesos.selectedRowlet selectedColumnNumber = tableViewMesos.selectedColumn配列に保存したいセルビューにある textField を識別します:

ただし、ここで問題が発生します。戻り値selectedColumnNumberは -1 であり、これは任意の列の選択された任意の行の選択されていない列の値です。しかし、selectedRowNumber行のインデックスを適切に返します。

したがって、セル内のテキストフィールドの編集を終了すると、プログラムがクラッシュします。selectedColumnNumber が -1 であるため、配列の制限を超えています。以下のコードを参照して、これが正確に発生する場所を特定してください。

私たちを手伝ってくれますか?私はこれであまりにも多くの時間を失いました..私はOSXプログラミングの初心者です。あなたが私を助けてくれることを願っています.

アプリのレイアウト

完成したコードは次のとおりです。

}

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

cocoa - Unable to change NSTableHeaderCell font on El Capitan

I'm developing a Cocoa App (OSX) and, in my tableview, I want to change the font of all of my columns.

I'm using the cell-based version.

Strangely, It is not possible to do it by using Interface Builder (IB). Each time, it forces me to use the font "System Small" !

But, if I activate the "hidden" checkbox, It allows me to change the font! So stupid!

So in my code (a derived class of NSTableView) I change the font of all my columns like that :

[ tableColumn setHeaderCell:tableHeaderCell ];

But, the font is always the small font on OSX El Capitan 10.11.4 : Result on El Capitan

Whereas, the same code in Yosemite displays the correct font :

Result on Yosemite

I don't understand why?

Is there a specific thing to do in El Capitan with NSCell?

Thanks for any help.

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

swift - コア データ ディクショナリを使用した NSTableColumn の並べ替え

モデル

customFields のキーと値は文字列です。

バインディング

ユーザーは列を追加/削除できるため、列はコードで作成されます。

問題

列ヘッダーをクリックすると、並べ替えが機能しません。値は単なる文字列ですが、そのようには見なされていないようです。問題がどこにあるのか、何か考えはありますか? ありがとう!

アップデート

  • NSTreeControllerエンティティ モードです
  • これはビューベースのアウトライン ビューです (セル ベースは現在も使用されていますか??)
  • 静的列 (IB で定義) の場合、並べ替えが機能します
  • 動的列を並べ替えても、何も起こりません (エラーなし)
  • ジェネリックを使用しないNSDictionaryなので、値は文字列とは見なされないと思います

更新 2

別のプロジェクトでは、成功しました。唯一の違いは、ディクショナリは ではなく、 whereMyObjectにはタイプのvalueプロパティがあることStringです。並べ替えは、次のコードを使用して有効にします。

またはこれも同様に機能します:

上記ではなく、その場合に機能する理由がわかりません。