无法将行作为html获取?

时间:2017-08-18 13:05:12

标签: java html swing

我试图将jtable的特定行显示为html ...而是我将整个表作为输出...我只是希望我的行数据被包含在html中而不是整个表.... 以下是我要做的事情......我在哪里弄错了?

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);
    }

1 个答案:

答案 0 :(得分:1)

不要使用table.selectAll(),只需使用setRowSelectionInterval(int indexBegin, int indexEnd)的{​​{1}}方法。

仅第一行的示例:

JTable