Предполагая, что вы имеете в виду поведение tree.getRowForLocation (...): в treeTable нет api, вы нажали недостающий api и можете рассмотреть вопрос об улучшении в трекере проблем swingx: -)
Пока это не будет доступно, вы должны сделать это самостоятельно в пользовательском MouseListener, который делегирует соответствующий метод дерева. Немного (кашель ..) грязно при приведении типов к рендереру для иерархического столбца в JTree:
MouseListener l = new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() != 2) return;
int column = treeTable.columnAtPoint(e.getPoint());
if (!treeTable.isHierarchical(column)) return;
Rectangle cell = treeTable.getCellRect(0, column, false);
JXTree tree = (JXTree) treeTable.getCellRenderer(0, column);
// translate x to tree coordinates
int translatedX = e.getX() - cell.x;
int row = tree.getRowForLocation(translatedX, e.getY());
LOG.info("row " + row);
}
};
treeTable.addMouseListener(l);
Только для справки: на форуме Swinglabs на java.net
есть параллельная ветка
Редактировать
горе предположений ;-)
При собственном ответе ОП слушатель будет запускать двойной щелчок в любом месте в ячейке таблицы, в которой находится узел, а не только тогда, когда прямо над узлом (иначе: его текст ). Таким образом, выясняется, что требование в большей степени соответствует принципам tree.getClosestRowForLocation (..), чем предполагаемое tree.getRowForLocation (..).