Announcement

Collapse
No announcement yet.

JTextArea in JTable verwenden?!!

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • JTextArea in JTable verwenden?!!

    Hallo Leute,

    hat jemand eine Idee wie ich eine JTextArea in eine JTable verwenden kann?

    Ich habe schon versucht einfach die Klasse TableCellEditor und auch DefaultCellEditor zu überschreiben und auch davon abzuleiten. Funzzt aber wohl nicht ganz so einfach, wie ich mir das gedacht hatte.

    Grüße

    Gerd

  • #2
    Hi Leute, ich habe eine Lösung gefunden, nun habe aber ein weiteres Problem:
    Ich würde gerne abfragen, wann der Button gedrückt wurde, und für welches Object(welche Row) dieser Button gültig war. Der Button ist auf dem JTextArea gesetzt. Mit dem Actionlistener hat es nicht funktioniert!

    public class TextFieldButtonCellRenderer extends DefaultTableCellRenderer
    implements ActionListener {

    private JTextArea cell = new JTextArea();
    private JButton button = new JButton("...");
    private Color blue = new Color(0, 0, 255);
    private Color white = new Color(255, 255, 255);
    private Color black = new Color(0, 0, 0);
    private int Row = -1;
    private int Column = -1;

    public TextAreaCellRenderer() {
    cell.setLayout(new BorderLayout());
    cell.add(button, BorderLayour.EAST);
    button.addActionListener(this);
    }

    public Component getTableCellRendererComponent(JTable table
    , Object value
    , boolean isSelected
    , boolean hasFocus
    , int row
    , int column ) {
    Row = row;
    Column = column;

    if (isSelected && !hasFocus) {
    cell.setBackground(blue);
    cell.setForeground(white);
    button.setVisible(false);
    } else {
    cell.setBackground(white);
    cell.setForeground(black);

    if (hasFocus)
    button.setVisible(true);
    else
    button.setVisible(false);
    }

    cell.setText((String) value);
    cell.setEditable(true);
    return cell;
    }
    public void actionPerformed(ActionEvent e) {
    System.out.println("Row:"+Row);
    }
    }

    Grüße

    Ger

    Comment

    Working...
    X