問題タブ [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.
swing - jTable の行を動的に色付けする
私の前の質問、Coloring jTable rowへの回答では、新しい質問がここに行くかどうかはわかりませんが、色を行に設定することは機能しています。しかし、私は for ループからそれを与えたいと思っています。つまり、i 番目の行の色を設定したいということです。使用したものをお譲りします。
メソッド cellrenderer を呼び出します。
ここでは、最初の列の値が BidNumber と等しいときに行に色を付けようとしていますが、セルレンダラー (ここ) では、row==1 として設定され、条件が true になるたびに 1 番目の行が色付けされます..どうすればi番目の行に設定できますか?
java - JTableの一部の行の色を変更しますが、すべてではありません
これを実現するために、カスタムセルレンダラークラスを作成しました。
そして、このレンダラーをテーブルの列で使用するように設定しました。
長さ=7の緑のString[]を含む行と、デフォルトの色の行が必要です。しかし、私のすべての行が緑色になるのは興味深いことです。ご覧のとおり、印刷ラインがあります。4回印刷されますが(私のテーブルには12行あります)、すべての行が4行ではなく緑色になります。何が問題なのですか。
java - FEST: セルが CellRenderPane を使用して JTable の下にあるときにセル値を取得する
次のようなコードがあります。
JCellFixtures または値またはコンテンツを取得しようとすると、すべてが null になります。行数または列数のみを取得しています。JTable は内部的に CellRendererPanel を使用しており、これを取得する必要があると思います。しかし、どのように?JTable には、作成する ContainerFixture がありません.panel()
。これらの状況でセル値を取得する方法はありますか? セルレンダラーパネルがある場合、通常はどのように行われますか?
これは、FEST デバッガーの階層です。
java - カスタムJTableセルエディタとセルレンダラーの使用方法
カスタムテーブルレンダリングとカスタムセルエディターを使用してJTableを作成しました。これにより、画像に結果が表示されます。
JPanelを拡張した別のクラスを使用して、最初のテーブルセルに表示されるパネルを作成しました。テーブル値を次のように追加します。
そして、これはこのテーブルを作成するための私のテーブルカスタムクラスです。
私の問題は、テキストフィールドに入力したり、チェックボックスを変更したり、ボタンをクリックしたりできないと思ったとおりにパネルが表示されていると考えられます。これを解決する方法を教えてください。
java - 1つのJTableにさまざまな行の高さを設定する方法
1つの列を含むJTableがあり、各テーブルセルのセルレンダリングは動的に生成されるJPanelであるため、各テーブルセルの高さはJPanelに応じて異なる必要があります。jpanelがレンダリングされる場所で行の高さを変更しようとしましたが、動作していません。JTableでさまざまなJTable行の高さを設定する方法を教えてください。
これが私がこれをやろうとした方法です、
java - セル内の jscrollpane が機能しない jtable
Web をサーフィンしていて、JTextPane を JTable のセルに使用する方法を見つけました。この方法でのみテキストを中央に表示できますが、テキストがセルの高さよりも長い場合にスクロールバーを表示する JScrollPane を追加すると、スクロールバーはセルに表示されますが、移動しません 表示されるだけで移動しません。
私は org.jdesktop.swingx.renderer.DefaultTableRenderer の swingx フレームワークを使用しています。ここに私のコードの一部があります:
tabla.getColumnModel().getColumn(col).setCellRenderer( new DefaultTableRenderer( new TextAreaProvider() ) )
JScrollPane を使用してセルを生成するためのコードを配置しました。
いろいろ試して疲れましたが、うまくいきません。解決策が必要です!
java - 明確なテーブルセルの背景色を変更する方法
私は CustomTableCellRender を持っています
...
そして、それは通常のユーティリティで機能しました。セルの背景色を変更する必要があります。特定のセルではなく、すべての列、すべてのセルで色を設定します。
私は何をする必要がありますか?
java - getTableCellRendererComponent 呼び出しの数を減らす
TableCellRenderer を実装し、各行に (JLabel ではなく) JTextArea を表示するカスタム セル レンダラーを使用しています。私は基本的に、行ごとに追加の計算を行う getTableCellRendererComponent(...) メソッドをオーバーライドしています。これらの計算は、テーブルの更新ごとに 1 回だけ実行する必要があります。マウスを動かすたびに getTableCellRendererComponent メソッドが呼び出されるため、ラグが発生します。したがって、遅延を回避するために getTableCellRendererComponent が呼び出されないようにする必要があると考えました。
考慮事項:
1) 私のテーブルには 1 列しかなく、ヘッダーがありません。
2) 私のデータは静的で、AbstractTableModel を実装するカスタム テーブルモデル クラスの getValueAt(int row, int column) メソッドによって ArrayList から読み取られます。
3) マウス モーション イベントを監視する必要はありません。
4) 私は多くのデータを期待していないので、テーブル全体を一度に表示するか、完全にキャッシュしたいかもしれません。
5) ほとんどの遅延は、getTableCellRendererComponent から戻るたびにテキストを設定することによって発生します。これは、一部の行が右から左への文字を使用しており、RTL テキストのレンダリングに余分な時間が必要なためです。
java - JTableの列固有のTableCellRenderersを指定します
ダブルスをJTable
表示する複数の列があるがあり、その一部は比率であり、その他はドル値です。TableCellRenderer
比率に使用するaと、ドルの値に使用するaを指定したいと思います。
Javaチュートリアルには、「特定の列のセルでレンダラーを使用するように指定するには、TableColumn
メソッドを使用する」と書かれていますsetCellRenderer
。これは役に立ちますが、どの時点でこのメソッドを呼び出す必要があるのかがわかりませんTableColumn
。これを行う標準的な方法はありますか?コンストラクターでこれを行うカスタムを作成する必要がJTable
ありますか?またはカスタムTableColumnModel
?TableModel
理想的には、私がすでに持っている習慣からこれを実行できるようにしたいと思いますが、これが可能になる可能性は低いようです。
どんな助けでもいただければ幸いです。ありがとう
java - TableCellRendererを使用してセルの背景を半分だけ塗りつぶすにはどうすればよいですか?
テーブルの同じセルを 2 色で塗りつぶしたい。セルにもテキストを表示する必要があり、現在の構造を維持して表示したいと考えています。
ラベル、パネルで試しましたが、正しく動作しません。また、セルのステータスに基づいて色を更新する必要があります (前半の色を更新し、後半の色を維持します)。