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();   
        }
    });

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

  • 相关阅读:
    Windows下载Vim
    分享:分享几个程序员使用的网站
    分享:C语言大礼包(PDF)
    将vscode打造成强大的C/C++ IDE
    最适合做C/C++开发的IDE
    bzoj 2244
    bzoj 1492
    bzoj 3262
    bzoj 1176
    bzoj 2961
  • 原文地址:https://www.cnblogs.com/wangshen31/p/10119523.html
Copyright © 2011-2022 走看看