1.table.getValueAt(m_nSelectRow,m_nSelectCol);
2.设置整个表不可编辑:
  MyTableModel model = new MyTableModel();
  JTable table = new JTable(model);class MyTableModel extends DefaultTableModel
{
  public boolean isCellEditable(int pRow, int pCol)
  {
    return false;
   }
}

解决方案 »

  1.   

    to:gja106(中文字符)
    1。table.getValueAt(m_nSelectRow,m_nSelectCol);获得的是一个object变量,我要放到string变量中该怎么处理呢?
      

  2.   

    可以直接这样的:String strItem = (String)table.getValueAt(m_nSelectRow,m_nSelectCol);//String也是一个对象不是基本数据类型2.如果你想使表的前两列不可编辑,但第三列以后的可以编辑可以这样定义MyTableModel :class MyTableModel extends DefaultTableModel
    {
      public boolean isCellEditable(int pRow, int pCol)
      {
        if (col < 2) 
        {
          return false;
        }
        else
       { 
         return true;
        }
       }
    }
      

  3.   

    如果你value就是String,可以:
     String s = (String) table.getValueAt(...);
    否则
      String s = String.valueOf(table.getValueAt(...));
     or String s = table.getValueAt(...).toString();
      

  4.   

    to  gja106(中文字符) :
    有关第一个问题解决了,
    但第2个问题我有这个疑问,按照你的意思,构造一个MyTableModel类,我编了一个小程序,但显示出来的只是一片空白,表格没有显示出来,我想,你能不能告诉我如何将这个表格显示出来呢?
      

  5.   

    JTable table = new JTable(new MyTableModel());
    然后把这个table加到容器中。
      

  6.   

    JTable table = new JTable();
    table.setModel(new MyTableModel());
      

  7.   

    JTable table = new JTable();
    table.setModel(new MyTableModel());
      

  8.   

    楼上的几位仁兄,你看看下面代码对吗?
    import javax.swing.*;
    import java.awt.*;
    import java.util.*;
    import java.applet.Applet;
    import javax.swing.table.*;public class window
    {
    static JFrame aWindow = new JFrame("48-hours-start-to-finish research turn-key");

    public static void main(String [] args)
    {
    Toolkit theKit = aWindow.getToolkit();
    Dimension wndSize = theKit.getScreenSize();
    aWindow.setBounds(wndSize.width/4,wndSize.height/4,wndSize.width/2,wndSize.height/2); aWindow.getContentPane().setLayout(null); /*Button b1 = new Button(" MY Test");
    b1.setBounds(10,10,120,100);
    aWindow.getContentPane().add(b1);*/ mytablemodel model = new mytablemodel();

    JTable table1 = new JTable(model);
    table1.setModel(model);
    table1.setBounds(60,100,100,100);
    aWindow.getContentPane().add(table1);
    aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    //aWindow.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    aWindow.setVisible(true);
    }
    }
    class mytablemodel extends DefaultTableModel
    {
    public boolean isCellEditable(int pRow, int pCol)
      {
        if (pCol < 2) 
        {
          return false;
        }
        else
       { 
         return true;
        }
       }}
      

  9.   

    用这个吧!!!自己对照一下程序,你的程序是正确的,只是有一些东西没有添加。
    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.*;
    import javax.swing.table.*;
    import javax.swing.table.JTableHeader;public class Dialog1 extends JDialog
    {
    BorderLayout borderLayout1 = new BorderLayout();
    public MyTableModel model = new MyTableModel();
    private int         rows=5, cols=3;
    public  Object[]    rowData = new Object[cols];
    JScrollPane jScrollPane1 = new JScrollPane();
    JTable jTable1 = new JTable(model); public Dialog1(Frame frame, String title, boolean modal)
    {
    super(frame, title, modal);
    try
    {
    jbInit();
    pack();
    }
    catch(Exception ex)
    {
    ex.printStackTrace();
    }
    } public Dialog1()
    {
    this(null, "", false);
    }
    void jbInit() throws Exception
    {
    model.addColumn("列1");
    model.addColumn("列2");
    model.addColumn("列3"); jTable1.setSize(100,100); jTable1.validate();
    this.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
    this.setSize(300,350);
    this.setLocation(200,250);
    this.show();
    this.validate();
    this.getContentPane().add(jScrollPane1, BorderLayout.NORTH);
    jScrollPane1.getViewport().add(jTable1, null);
    InitializeTable();
    } private void InitializeTable()
     {
     int colCount = model.getColumnCount();
     rowData = new Object[3];  for(int i = 0 ; i < 5; i ++)
     {
    rowData[0] = "a";
    rowData[1] = "b";
    rowData[2] = "**********";
    model.addRow(rowData);
     }
    } public static void main(String[] args)
    {
    new Dialog1();
    }
    }class MyTableModel extends DefaultTableModel
    {
    public boolean isCellEditable(int pRow, int pCol)
    {
    if (pCol < 2)
    {
    return false;
    }
    else
     {
     return true;
    }
     }
    }