内での作業ではない スクロールバーがMultiRowCellがAbstractCellEditorがするTableCellEditorを実装して拡張し、すべてのスクロールバーがセルレンダリングとエディタが、まだスクロールバーが はそれを動作させる何かを提案してください動作していないの両方を利用して、表のセル
クラスで移動されていません、TableCellRendererを{
private JScrollPane scrollPane;
private JTextArea textArea;
public MultiRowCell() {
textArea = new JTextArea();
textArea.setEditable(true);
scrollPane = new JScrollPane(textArea);
}
@Override
public boolean isCellEditable(EventObject e) {
System.out.println(e);
return true;
}
@Override
public Object getCellEditorValue() {
return textArea.getText();
}
protected void setCellValue(Object value) {
if (value == null) {
textArea.setText(null);
} else {
textArea.setText(value.toString());
}
textArea.setCaretPosition(0);
}
@Override
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
setCellValue(value);
return scrollPane;
}
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
setCellValue(value);
return scrollPane;
}
}
//TextTableCellRenderer tr=new TextTableCellRenderer();
//table.getColumnModel().getColumn(1).setCellEditor(tr);
MultiRowCell re=new MultiRowCell();
table.getColumnModel().getColumn(1).setCellRenderer(re);
table.getColumnModel().getColumn(1).setCellEditor(re);
//table.getColumnModel().getColumn(1).setCellRenderer(r);
//table.getColumnModel().getColumn(1).setCellEditor(e);
//table.getColumnModel().getColumn(2).setCellRenderer(r);
//table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
panel.setLayout(new BorderLayout());
panel.add(table, BorderLayout.CENTER);
panel.add(table.getTableHeader(), BorderLayout.NORTH);
return panel;
私はあなたが取る必要がある最初のステップは、[コンセプト:エディタとレンダラー](https:// docs)を見ていると思います。実際にレンダラーがどのように「JTable」(およびその他のSwing c()を使用しているかを理解するために、.oracle.com/javase/tutorial/uiswing/components/table.html#editrender)コンポーネント)を使用します。その後、私はあなたが[例]についてセルエディタにコードを回し、その方向 – MadProgrammer
からそれを利用するために離れて把握する必要がありますだと思う(https://stackoverflow.com/questions/9395554/scrollable-cells-in -jtable) – MadProgrammer
実際に私はそれを試したが、方法を見つけることができなかった。あなたは、この上ellaborateてもらえ。 –