I'm using a CellImpl like DisplayTest:27. As I track the pointer over
the 3-D surface I select the corresponding cell in a JTable:
CellImpl cell = new CellImpl() {
public void doAction() throws VisADException, RemoteException {
RealTuple low = (RealTuple) ref_direct_low.getData();
double x=((Real) low.getComponent(0)).getValue();
double y=((Real) low.getComponent(1)).getValue();
table.setRowSelectionInterval((int) x,(int) x);
table.setColumnSelectionInterval((int) y,(int) y);
Rectangle rectangle = table.getCellRect((int) x,(int) y,true);
table.scrollRectToVisible(rectangle);
table.repaint();
}
The cell selection does not move until I release the right button. It
then takes up to several seconds before the new cell is highlighted.
The final highlighted cell does reflect the position of the pointer
when I release it which is what I want. However, I cannot get the cell
selection to update as I move the pointer (pseudo-real time updating).
So for example if I move from (1,1) to (2,2) to (3,3) to (4,4) and
release the button, (1,1) stays highlighted while the pointer moves and
(4,4) is highlighted a second or two after I release the button.
Debugging information shows CellImpl is returning all four points. How
can I get the cell selection to highlight all four points in this
example? Is this problem related to VisAD, a limitation in JFC, or
just my limited understanding of JTable?
As always, thanks in advance for any help.