我试图将jtable的特定行显示为html...But,而不是将整个表作为输出。...I只希望将行数据包含在html中,而不是整个表。下面是我正在尝试做的事情,....Where我犯错了吗??
public static void go() {
javax.swing.JTable table = new javax.swing.JTable(
new Object[][] { new Object[] { "Row00", "Row01" }, new Object[] { "Row11", "Row12" }, },
new Object[] { "Col A", "Col B" });
table.selectAll();
javax.swing.TransferHandler handler = table.getTransferHandler();
if (handler == null) {
System.err.println("No handler.");
return;
}
int actions = handler.getSourceActions(table);
if ((actions & javax.swing.TransferHandler.COPY) == 0) {
System.err.println("Not copy.");
return;
}
java.awt.datatransfer.Clipboard clipboard = new java.awt.datatransfer.Clipboard(
"Export");
try {
handler.exportToClipboard(table, clipboard, javax.swing.TransferHandler.COPY);
} catch (IllegalStateException exc) {
exc.printStackTrace();
return;
}
java.awt.datatransfer.Transferable transferable = clipboard.getContents(null);
if (transferable == null) {
System.err.println("clipboard");
return;
}
if (!transferable.isDataFlavorSupported(HTML_STRING_FLAVOR)) {
System.err.println("not supported");
return;
}
try {
Object data = transferable.getTransferData(HTML_STRING_FLAVOR);
System.out.println(data);
}发布于 2017-08-18 21:32:44
不使用table.selectAll(),只需使用JTable的setRowSelectionInterval(int indexBegin, int indexEnd)方法即可。
仅针对第一行的示例:
table.setRowSelectionInterval(0, 0);https://stackoverflow.com/questions/45757419
复制相似问题