問題タブ [nstextfieldcell]
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 - NSTextFieldCell サブクラスのすべての初期化子を実装する必要がありますか?
NSTextFieldCell
ドキュメントに従って、 method をオーバーライドすることのみを目的として のカスタム サブクラスを作成しましたsetUpFieldEditorAttributes:
。
NSTextFieldCell
ドキュメントには、またはそのスーパークラスの初期化子については言及されていませんNSActionCell
が、ドキュメントにはNSCell
明示的に言及されています。
NSCell をサブクラス化するときは、指定されたすべての初期化子を実装する必要があります。これらのメソッドは、init、initWithCoder:、initTextCell:、initImageCell: です。
カスタム サブクラスでは、Cocoa クラスの明示的なオーバーライド ポイントをオーバーライドする以外は何もしていないので、スーパー クラスの実装のみを呼び出す 4(!) イニシャライザを作成する意味はありますか?
Objective-Cのメソッドの冗長な性質によりinit...
、これは実装のコード行、書き込み (およびその種のことを行う人々にとっては読み取り) および一般的に維持するコメントの数を 5 倍にします。
これを書くのにかかった時間内にこれらのメソッドを作成できたことはわかっていますが、単に super を呼び出すメソッドの存在が何か違いがあるのでしょうか?
追加するために編集:
すべての指定されたイニシャライザを実装する必要があると述べているドキュメントを読み間違えましたNSTextFieldCell
が、問題はまだ残っていますinit
.superを呼び出すだけの3つのイニシャライザ(継承チェーンの指定されたイニシャライザとしてどういうわけか姿を消しました)は本当に違いますか?
cocoa - 選択時に NSTextFieldCell のテキスト属性が変更されました
行の列を選択するとオーバーライドされたメソッドが呼び出されるテーブルビューがあります
また、セルのフィールド エディターを次のように返します。
セルが選択されると、セル内のテキストの属性が変更されます。同様に、フォントサイズ、フォントフェイス、フォントスタイルなどがそれに応じて変化します。テキストが選択モードになっているときは、それを制御できないようです。選択後もフォント プロパティを変更したくありません。このテキスト属性の変更を回避するにはどうすればよいですか?
cocoa - 複数行のNSTextFieldの最後の行を切り捨てます
Finderのファイルラベルに似たテキストフィールドを作成しようとしています。最後の(2番目の)行を途中で切り捨ててほしい。
私は複数行から始めましたNSTextField
。
ただし、呼び出すと[self.cell setLineBreakMode:NSLineBreakByTruncatingMiddle];
、テキストフィールドに1つの切り捨てられた行のみが表示されます(改行はなくなります)。
Finderでの表示は次のとおりです。
objective-c - NSTextField に NSTextFieldCell のカスタム サブクラスを使用させる方法は?
NSTextField を下揃えにするソリューションを探していましたが、これを見つけてニーズに合わせて調整しました。これで、このカスタム NSTextFieldCell ができましたが、NSTextFields にこのクラスを (プログラムで) 使用するように指示するにはどうすればよいですか?
objective-c - NSTextField 下揃え
フォントサイズを動的に変更するときに、テキストの一番下のピクセル行が常に同じ場所に留まるように、NSTextField のテキストを下に揃える必要があります (これを使用してそれを行います)。
現在、このシナリオがあります。たとえば、フォント サイズが 55 から 20 に小さくなると、テキストが境界/フレームの上部にぶら下がりますが、これは私が必要とするものではありません。
テキストを下部に揃えることができるものは見つかりませんでしたが、これを見つけて、カスタム NSTextFieldCell サブクラス用に調整しました。
[myTextField setCell:myTextFieldCell];
NSTextField が NSTextFieldCell を使用するようにも使用しましたが、何も変更されていません。これを正しく調整しなかったのですか、それとも他に何が間違っていますか?
objective-c - 複雑なカスタム nstextfieldcell を作成する
NSTextFieldCell
のカスタムを作成しようとしていますNSTableView
。Mail が提供するメール一覧のようなことをしたい (下の例)。
こことここでいくつかの参照を見つけましたが、進化できません。
複数行のテキストほど単純ではないと思います。セルには、右上隅のタイムスタンプ、添付アイコンなどの事前定義された場所が必要だと思います...この「プレースホルダー」は、テキストサイズに関係なく、常に同じ場所にある必要があります。埋め込みオブジェクトについて考えています。
助けてください。例またはサンプルコードは大歓迎です。
編集: MAC OS X Lion (10.7.x) ソリューションを探しています。
objective-c - NSTextFieldCell を使用しない NSCell セルの背景色の変更
現在、テーブルには 4 つの列があります。3 つは NSTextFieldCells で、1 つは NSCell を使用するカスタム セルです。行の色を変更する必要があります。NSTextFieldCells の色を変更しましたが、NSCell の背景色を変更する必要があります。それを行う方法はありますか? NSTextFieldCell を使用してこの 1 つのセルを実行することは絶対にできません。
cocoa - NSTextField:他のアプリのように検索アイコンを追加するにはどうすればよいですか?
NSTextFieldの左側に検索アイコンを追加するにはどうすればよいですか?他の多くのアプリケーションでも同じことがわかります。
cocoa - NSTextField インナー シャドウ
Mac アプリのラベルに内側の影を付けようとしています。
デザイナーが送った Photoshop のデザインと一致させようとしています。私が一致させようとしている外観は次のとおりです。
Photoshop でこれを行う方法は、次の設定でインナー シャドウを設定することです。
他のサイトでこの種のことに対するいくつかの異なる解決策を見てきましたが、どれも正しく機能しません.
たとえば、誰もが使用すると言います:
NSBezierPath などでインナー シャドウを実行することについて多くのことを見つけましたが、ラベルは使用しませんでした。
質問に対するこの回答では、上記の setBackgroundStyle を使用するように指示されてから、
たとえば、 NSGradient でカスタムビューを使用することにより、グラデーションの背景に到達できます
しかし、このビューはどこに行くのでしょうか? 回答が参照するリンクは、テキストではなく、ウィンドウに再び内側の影を付けることについて語っています。
誰でもこれで私を助けることができますか?
ありがとう
macos - NSTablview NSTextFieldCellSetSelectable-
特定の条件でnstextfieldcellの1つを選択解除しようとしていました。サンプルコードを添付しました:
セルは、状態をチェックする際にまだ選択されています。tableviewをtabledatasourceとdatadelegateのクラス名にバインドしました。まだセルを選択できます。私はそれを間違っていますか?