問題タブ [tablecellrenderer]
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.
java - JTable レンダラーのボタン テキストが表示されない。なんで?
JTable にカスタム セル レンダラーを設定しましたが、動作しますが、代わりにテーブル セルであるボタンに "x" が表示され、"..." (3 つのドット) が表示されます。私は何を取りこぼしたか ??
java - 特定の JTable セルにマウス カーソルを設定する
一連の編集不可能なセルを含む JTable があり、特定の列のすべてのセルに、マウスがそれらの上に置かれている間、別のマウス カーソルが表示されるようにします。既にカスタム レンダラーを使用していますが、レンダラー コンポーネントにカーソルを設定しても機能しないようです (ツールチップの場合と同様)。
編集者には効果があるようです。
セルが編集されていない場合、または何か不足している場合、これは JTable では不可能ですか?
java - TableCellRenderer でカスタム Swing JComponent を使用する
OK、単純なカスタム JComponent の作成方法を知っています。TableCellRenderer をオーバーライドする方法を知っています。2つを組み合わせることができないようです。
これが私が作成したサンプルJComponent
です:
It works fine as a standalone JComponent. I call setXval(something)
and it updates just fine. (edit: I have a Swing Timer that updates the data periodically)
But if this component is something I return in TableCellRenderer.getTableCellRendererComponent(), then it only repaints when I click on the cell in question. What gives? I must be leaving out something really simple.
swing - Scala の慣用的なテーブル セル レンダラー
私は従来の JavaTableCellRenderer
アプローチを使用しscala.swing.Table
て、レンダラーをテーブルのTableColumnModel
. このコードは次のようになります。
残念ながら、これにはメモリ リークがあるようです。おそらく、テーブル内のすべてのセルに対して新しい Component インスタンスを作成しているためです (約 30k 行)。確かに、scala テーブルをJTable
(まったく同じ列とデータモデルを使用して) に置き換えると、メモリ リークがなくなります。
rendererComponent
したがって、私の質問は、独自のセルレンダラーがあると仮定してメソッドをオーバーライドするときに、どのようなコードを使用するのですか?
java - ニンバスのルックアンドフィール用のシンプルなセルレンダラーの設計
私はいくつかのsで構成されるシンプルなセルレンダラーを持っていJLabel
ます(レンダラー自体は拡張JPanel
されます)。ニンバスのルックアンドフィールで適切にレンダリングできるようにしようとしています。基本的に、明るい行では(Nimbusには代替の行の色があるため)、特定のセルレンダラーがテーブルの背景色(明るい行と暗い行の両方の色よりもはるかに暗い)を使用しています。私のレンダラーでは、次のことを行います。
このコードブロック全体をコメントアウトすると、すべての行が暗い行の色になります(テーブルの背景ではなく、代替色でもありません)。何が起こっているのかさえ理解できません!上記のコードスニペットは、背景色が異なるセルをどのように生成しますか?table.getBackground
メソッドを呼び出すたびに色が変わりますか?
このコードスニペットを使用してみました:
これはDefaultTableCellRenderer
クラスにあります。そして、それはまったく影響を与えていないようです。誰かがニンバスで動作するカスタムセルレンダラーを持っていますか?
編集:誰かが興味を持っているなら、私は実際にJavaではなくScalaを使用していたので、これはScalaテーブルセルレンダラーの問題であることが判明しました。以下の受け入れられた答えは、Javaプログラムでうまく機能します。ここに提出された別の質問。
scala - NimbusとScalaを使用したテーブルセルレンダラー
ニンバスのルックアンドフィールを使用してセルレンダラーで発生していた問題についてこの質問をしましたが、問題はおそらくScalaに関係していることが判明しました。基本的に、Panel
(ではなくDefaultTableCellRenderer
)拡張するセルレンダラーがあり、奇妙な動作をしています。同等のJavaプログラムが正常に動作するのに対し、代替行の色は正しくレンダリングされません。誰かが興味を持っているなら、ここに実行するいくつかのScalaコードがあります:
コードを実行すると、問題が何であるかがわかります(Panel
-rendererの代替行の色が正しく機能していないことに関係しています)。同等のJavaを実行すると、正常に動作することがわかります。Scalaコードが期待どおりに機能しない理由を誰かが知っていますか?同等のJavaコードは次のとおりです。
java - テキストとアイコン (MouseListener を使用) を JTable 列に追加する
以下の機能を実装したいのですが、Javaで可能かどうか迷っています。はいの場合、どのように?助けてください:
テーブルの1行目に列名と各列、つまり1行目の各セルにアイコンが含まれるJTableのようなテーブルを作成したいと思います。そのアイコンをクリックすると、その列がテーブルから削除されます (MouseListener を使用して可能ですか??)。
JTable のセルにボタンを追加できる多くのソリューションを見つけましたが、テキストとアイコン (MouseListener を使用) の両方をセルに追加することを説明するソリューションはありません。あなたが助けてくれるかどうかを確認してください。読んでくれてありがとう。
jtable - Java JTable TableCellRenderer の問題
プログラムに scrTbl という名前の JTable を実装しました。「up」と呼ばれる外部ブール変数に基づいて、このテーブルの 1 つの列のテキストの色を変更できるようにしたいと考えています。この取り組みに関連する私のコードは次のとおりです。
ポイントは、up の値に基づいて、列 9 と特定の行 (インデックス付き nmbrStocks) のテキストの色を緑または赤に設定することです。
しかし、実行すると、すべてのテキストが緑色に設定されます。列 9 のセルが書き込まれるたびにレンダラーが呼び出されますか、それともプロトコルは何ですか?
助けてくれてありがとう。
java - J2MEのLWUITテーブルでのセルのカスタム作成
J2MEアプリケーションでLWUITテーブルを作成しようとしています。ここでは、1つの列のすべてのセルが特定のタイプであり、たとえば、10進数の入力を受け取るTextFieldです。
誰かがこれまたは私が取ることができる別のアプローチを達成することを提案できますか?
java - JTable列にチェックボックスを含める方法は?
序文: 私は Java が苦手で、Java UI コンポーネントが苦手です。
ボタンをテーブルに追加する方法に関するいくつかの異なるチュートリアルを見つけましたが、チェックボックスの追加に苦労しています。デフォルトでチェックされたテキストボックスを描画する列が必要です(セルレンダラーはそれを処理すると思います)。次に、チェックボックスをクリックすると、ボックスのチェックを外し、ボックスを再描画し、追跡できる場所でイベントを発生させます。
現在、私はカスタムセルレンダラーを持っています:
現在、チェックボックスの描画を処理していますが、その行が選択されている場合にのみボックスのチェックとチェック解除を行います。しかし、私はイベントを処理する方法がわかりません。本当に私が求めているのは、チェックボックスを JTable にきれいに追加する方法に関する優れたチュートリアルへのリンクです。どんな支援も大歓迎です:)