内置java netbeans后,构造函数中调用的方法无法正常工作

时间:2014-08-22 09:39:21

标签: java swing sqlite netbeans constructor

在这里,当我在netbeans中运行java项目时,一切正常。但是在它们构建完成后,组合框中没有添加任何项目,因为它在netbeans运行期间有效。示例代码如下所示。

首先登录JFrame

 public class Login_Frame extends javax.swing.JFrame {

 welcome w = new welcome();     

 public Login_Frame() {
    initComponents();
 }

 //button action perform event for dispose this window and open new welcome window

 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {  

 .
 .
 w.setVisible(true);
 this.dispose();
 .
 .

 }
 }

第二个JFrame

  public final class welcome extends javax.swing.JFrame {

    // comboitem is class in which method for adding item in combobox from sqlite 
       db is declared 

    comboitem c = new comboitem();

   // textclass is class in which method for changing lowercase text entered in
       text to uppercase is declared

    textclass tc = new textclass();

    public welcome() {

    // while I try to run the project using netbeans run project option 
    // logincall() method initialized and work fine.

问题 在我尝试从cmd运行jar文件时构建项目之后。它运行没有任何 错误,但logincall()方法不起作用或可能未初始化。

    initComponents();
    logincall();
    .
    .
    }

    public void logincall(){

 //Remarks    
 //tc.uppercase() method is working fine after built. But other c.but_stn() like
 // doen't.while during running project through netbeans all thing working fine. 

    c.bus_stn();
    c.bus_trl();
    c.inq_stn(); 
    c.editframe();
    c.userlist();
    c.editTrainStation();
    c.editFlightStation();
    c.flightFlight();
    c.pickupstand();
    tc.uppercase();

}

我不知道它有什么问题。我在谷歌搜索但没有找到任何正确的答案。 netbeans中也出现任何错误。如果需要更多信息,请填写免费提问。我感谢您的所有回复。

这是我的欢迎主课程的主要方法。

public static void main(String args[]) {
   ... 
   look and feel auto generated code
   ....

    java.awt.EventQueue.invokeLater(new Runnable() {

           public void run() {

            new welcome().setVisible(true);
        }
    });
}

1 个答案:

答案 0 :(得分:0)

这里可能存在一些问题:

1)您是否在EventDispatchThread上运行GUI?这对于java swing GUI来说是必须的,因为它能够正常工作。主要原因是并发性。详情here

2)你是否正在重新渲染你的组合框?这样做很重要,因为可能无法立即显示对GUI元素的更改。

3)您使用的数据库是什么?为了确定故障是存在于代码还是数据库中,您可以使用静态数据编写测试,如果它在IDE中加载并且在其外部,则可能是您的代码正确但DB不是