zoukankan      html  css  js  c++  java
  • JTable运行的时候抛出NullPointerException的问题

    在一个需要动态更新JTable的程序中,为了实现动态刷修数据。在主线程之外开了个新线程来进行算法的执行还有数值计算,然后最后调用

    jTable.updateUi();

    的方法。

    然后图形界面上是一点问题都没有的,但有次突然发现,某次运行的时候,控制台爆了个空指针的异常:

     

    无语的是,这个异常一来没有指示是哪个位置有问题……而来是不一定会出现……三来是对界面的显示似乎完全没影响。

    显然这就是和线程有关的问题。

    然后查了下资料,应该是jTable.updateUi()方法的问题。  这个方法可能影响到了Swing原来的线程机制。因为Swing是有自己的一套线程机制的,有三个线程,具体的就不在这里详细说明了。

    那么怎么解决呢?用了官方建议的方法:

    SwingUtilities.invokeLater(new Runnable() {
      @Override
        public void run() {
        // TODO Auto-generated method stub
          jTableRunResult.updateUI();   
        }
    });

    问题解决,那个异常再也没有抛出了。

  • 相关阅读:
    团队协议
    C++ 多继承和虚继承的内存布局(转)
    轻量级的.Net ORM框架介绍
    EF下CodeFirst、DBFirst与ModelFirst分析
    JDK方式
    JSON
    事务的ACID特性
    数据库查询
    Assets
    内部文件存储
  • 原文地址:https://www.cnblogs.com/wangshen31/p/10119523.html
Copyright © 2011-2022 走看看