Den Entwickler fragen ;-) Scheint allerdings nicht mehr weiterentwickelt zu werden.Hallo, wie füge ich bei JGrid einen Zeilenumbruch in einer Zelle ein?
/r/n
schonmal probiert?Java:/r/n
Den Entwickler fragen ;-) Scheint allerdings nicht mehr weiterentwickelt zu werden.
Ein JGrid scheint ja was ähnliches wie eine JTable zu sein und arbeitet mit Renderern zu Darstellung der Zell-Inhalte. Im Standard wird hier (wie bei der JTable) ein JLabel verwendet. Man könnte also versuchen diesem HTML Code unterzuschieben - nützt allerdings für's Editieren nichts.
Die Lösung wäre vermutlich einen eigenen GridCellRenderer (z.B. auf Basis einer JTextArea) zu schreiben und diesen über das StyleModel des JGrid für alle oder bestimmte Datentypen zu setzen.
;-) ich nutze das und kannte es bis vor ein paar Tagen doch gar nichtMit dem HTML Code klappt es nicht. Hast du zufällig ein Beispiel für den GridCellRenderer?
import java.awt.*;
import javax.swing.*;
import net.sf.jeppers.grid.*;
/**
* Paint negative numbers red
*/
class NumberRenderer extends GenericCellRenderer {
public Component getRendererComponent(int row, int column, Object value, CellStyle style, boolean isSelected, boolean hasFocus, JGrid grid) {
Component comp = super.getRendererComponent(row, column, value, style, isSelected, hasFocus, grid);
setHorizontalAlignment(SwingConstants.RIGHT);
if (value instanceof Number && ((Number) value).intValue() < 0) {
comp.setForeground(Color.red);
}
return comp;
}
}
class AreaRenderer extends GenericCellRenderer {
private JTextArea area;
public AreaRenderer() {
area = new JTextArea();
}
public Component getRendererComponent(int row, int column, Object value, CellStyle style, boolean isSelected, boolean hasFocus, JGrid grid) {
if (value==null) {
area.setText("");
}
else {
area.setText(value.toString());
}
return area;
}
}
Wenn schon, dann...schonmal probiert?Java:/r/n
\r\n