# SWT: Tabellen-Inhalt kopieren



## egon123 (20. Apr 2006)

Hallo!

Ich möchte in meinem Programm mehrere Zeilen einer Tabelle (TableViewer wird verwendet) markieren, kopieren und in anderen Tools wie Excel einfügen können. Die Copy/Paste-Funktion ist bei Text-Feldern ja schon vorhanden. Bei Tabellen scheint sie aber zu fehlen.

Gibt es trotzdem eine Möglichkeit, Zeilen aus einer Tabelle in ein anderes Programm zu kopieren?

Gruß,
egon


----------



## semi (20. Apr 2006)

Klar geht das. Hier ein Beispiel.
	
	
	
	





```
if(table.getSelectionCount() > 0)
{
  TableItem rows[] = table.getSelection();
  StringBuilder sb = new StringBuilder();
  for(int row=0, cc=table.getColumnCount(); row < rows.length; row++)
  {
    if(row>0)
      sb.append("\n");
    TableItem item = rows[row];
    for(int column=0; column < cc; column++)
    {
      if(column>0)
        sb.append((char)SWT.TAB);
      sb.append(item.getText(column));
    }
  }
  Clipboard clipBoard = new Clipboard(Display.getCurrent());
  clipBoard.setContents(new Object[] { sb.toString() }, new Transfer[] { TextTransfer.getInstance() });
  clipBoard.dispose();
}
```
Gruß,
Michael


----------



## egon123 (21. Apr 2006)

Super, danke für den Tipp. Bin gar nicht auf die Clipboard-Klasse gekommen.

Gruß,
egon



			
				semi hat gesagt.:
			
		

> Klar geht das. Hier ein Beispiel.
> 
> 
> 
> ...


----------

