Some Strange things in JTable



I am try to create a dynamic table.

String[] dataColumns = {"Observation Time", "Value", "Mode"};

DefaultTableModel dataTableModel =
new DefaultTableModel(dataColumns, 100);

// read data into dataTableModel here
// each row is a vector,
// read in another vector for Timestamp, Double and String

JTable dataTable = new JTable(dataTableModel);
dataTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
dataTable.setRowSelectionAllowed(true);
dataTable.setCellSelectionEnabled(true);
dataTable.setDragEnabled(true);

JScrollPane scroll = new JScrollPane(dataTable);
scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
scroll.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
scroll.setWheelScrollingEnabled(true);

So far so good, everything is working fine.
I can select a row by single click,
select a cell by double clicks,
edit a cell, scroll up and down.

Later I have new data coming, I remove all rows from that
dataTableModel, and read the new data and added to new row to
that dataTableModel. Then I got new data display on the JTable.

So far still in good shape. However, here are the problems I found:

1. I can't select a row any more.
2. I can't edit the a table cell any more.
3. the scroll bar is goen, I can only see a portion of table. I can't
scroll up and down, left and right.

I can still do drag and select table cell by double clicks.
So I can only do select a row by dragging.

Can anyone out there explain or tell me why?

Each time I added a new row, I do

dataTableModel.addRow(vectorRow);
dataTableModel.fireTableDataChanged();

and after I finished added all rows, I do

dataTableModel.fireTableChanged(new TableModelEvent(dataTableModel));

But still no luck at all!
Any idea? Please tell me how to fixed above three problems?

Thank Q very much in advance!
.



Relevant Pages

  • Some Strange things in JTable
    ... // read data into dataTableModel here ... JScrollPane scroll = new JScrollPane; ... edit a cell, scroll up and down. ... I can't edit the a table cell any more. ...
    (comp.lang.java.programmer)
  • Some Strange things in JTable
    ... // read data into dataTableModel here ... JScrollPane scroll = new JScrollPane; ... edit a cell, scroll up and down. ... I can't edit the a table cell any more. ...
    (comp.lang.java.gui)
  • Re: Some Strange things in JTable
    ... DefaultTableModel dataTableModel = ... // read data into dataTableModel here ... JScrollPane scroll = new JScrollPane; ... edit a cell, scroll up and down. ...
    (comp.lang.java.help)
  • Re: How To: make the datalist scroll to the cell being edited?
    ... I guess if you want to support non IE browsers you could use an anchor ... When> the user clicks the "edit" link, the appropriate cell is moved into edit> mode, as specified in the EditTemplate. ... > The problem is that if the data table is longer than the browser window,> so the user has to scroll down to see parts of it, then when they are> taken to edit mode, the page loads and stays at the top of the table. ...
    (microsoft.public.dotnet.framework.aspnet)
  • How To: make the datalist scroll to the cell being edited?
    ... the user clicks the "edit" link, the appropriate cell is moved into edit ... taken to edit mode, the page loads and stays at the top of the table. ... They then have to scroll down and find the cell they asked to edit. ...
    (microsoft.public.dotnet.framework.aspnet)