基本textField actionListener发生错误(命令在侦听器中时发生错误)

克里斯·柯林斯

当我在文本字段上按Enter时,我一直收到错误消息(以下将发帖错误)。我希望文本字段将数据保存到全局定义的变量。每当我的代码中不包含“名称”时,actionListener都可以工作,例如,如果我将int a = 3放入,则没有错误。我也在全局上(在主gui上)声明了名称,因为如果我没有收到错误消息,指出变量不在范围内,也许这是一个问题吗?

    //Declared inside the main gui (the others are nested in this)
    JTextField name;
    JLabel nameLabel;

    //Name text field defined inside the gui jInternalFrame
    TextField name = new TextField("Enter Name..", 20);
    JLabel nameLabel = new JLabel();
    nameLabel.setText("Name: ");
    name.addActionListener(new nameListener());
    addRoomPanel.add(nameLabel);
    addRoomPanel.add(name);`

    //ActionListener defined outside of the text field gui
    class nameListener implements ActionListener{
        public void actionPerformed(ActionEvent e){
            nameString = name.getText();
            name.setText("saved");
            name.selectAll();
         }
    }

ERROR MESSAGE:
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at InternalFrame$dobListener.actionPerformed(InternalFrame.java:445)
    at java.awt.TextField.processActionEvent(TextField.java:617)
    at java.awt.TextField.processEvent(TextField.java:585)
    at java.awt.Component.dispatchEventImpl(Component.java:4872)
    at java.awt.Component.dispatchEvent(Component.java:4698)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:747)
    at java.awt.EventQueue.access$300(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:706)
    at java.awt.EventQueue$3.run(EventQueue.java:704)
    at java.security.AccessController.doPrivileged(Native Method)
    at  java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
    at java.awt.EventQueue$4.run(EventQueue.java:720)
    at java.awt.EventQueue$4.run(EventQueue.java:718)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:717)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
保罗

UI的组件定义了两次。一次在GUI类中作为变量,一次在(我想)构造函数中。由于这两个变量具有namenamenameLabel存在。构造函数将访问在构造函数中声明的变量,因此GUI类的变量保持未初始化(null)。ActionListener访问的变量在GUI-类,它是null和抛出一个NullPointerException您将必须使用一个变量而不是两个。为了获得更精确的答案,我需要更多代码(或者至少比上面发布的摘录更有用)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

尝试在ScalaFx中绑定鼠标事件侦听器时发生编译错误

使用Composition API插件在Vue 2中功能组件(在正常工作时)发生未定义的侦听器错误

Android:与片段交互侦听器发生错误

部署ruby-on-rails项目时发生错误“属性侦听器不能为空”

基本事件侦听器引发错误(“未定义不是函数”)

在 LibGdx 中添加 TextField 及其侦听器

在comboBox上的操作侦听器以在textField中显示选择

JavaFX的TextField的值更改侦听器

动作侦听器中的动作侦听器错误

设置侦听器接口时发生ClassCastException

Android:侦听器,以在声音发生时录制声音

startActivity时发生错误

线程中的transport.write()发生扭曲时发生错误

基本控制器错误

加载页面但事件未发生时执行的事件侦听器函数

这些基本的Unix命令在幕后发生了什么?

在Ubuntu中执行cmake时发生错误

在Yii中建立专案时发生错误

在获取中添加捕获时发生错误

处理数组中的数据时发生错误

在Paypal中退款时发生错误

在django中迁移模型时发生错误

无法在ggsunburst中运行基本命令。语法错误

在更新 Audio 元素中的 `src` 后,事件侦听器会发生什么?(反应)

很抱歉,从存储中读取时发生服务器错误。错误代码PERMISSION_DENIED

如何在事件发生之前删除侦听器?

Firestore事件侦听器在容器内发生冲突

尝试将侦听器用于FAB时发生NullPointerException

当 textFieldShouldReturn 时,UITableView 中的多个 textFields 更新错误的 textField