2016-02-18 4 views
1

Я не могу взаимодействовать с текстовым полем и кнопкой, то есть когда я нажимаю на них, ничего не происходит.Как активировать/активировать интеракторы

Это моя первая попытка взаимодействия с java после просмотра лекций 20 и 21 курса iTunesU cs016a.

Я ожидал хотя бы того, чтобы писать что-то в текстовом поле. Я использую Eclipse Helios на Mac. Программа компилируется без предупреждений.

Я переписал его несколько раз, добавив графическое и мышечное взаимодействие на верхнюю часть , и это сработало достаточно хорошо. Я просто не понимаю, почему кнопка и текстовое поле не работают.

Что мне не хватает? Спасибо за любой намек.

Выход:

program output

Мой код:

import acm.program.GraphicsProgram; 
import acmx.export.javax.swing.JButton; 
import acmx.export.javax.swing.JLabel; 
import acmx.export.javax.swing.JTextField; 

public class Interactors extends GraphicsProgram { 

    private static final int WIDTH = 1000; 
    private static final int HEIGHT = 500; 

    private static final long serialVersionUID  = 1L; 
    private static final String NAME_LABEL_TEXT  = "Name"; 
    private static final int NAME_COLUMN_SIZE  = 40; 
    private static final String NAME_DEFAULT_VALUE = "Program"; 
    private static final String ADD_BUTTON_TEXT  = "Add"; 

    public void init() { 

     setSize(WIDTH, HEIGHT); 

     add(new JLabel(NAME_LABEL_TEXT), SOUTH); 
     add(new JTextField(NAME_DEFAULT_VALUE, NAME_COLUMN_SIZE), SOUTH); 
     add(new JButton(ADD_BUTTON_TEXT), SOUTH); 

     addActionListeners(); 
     addMouseListeners(); 
    } 

} 
+0

Не уверен, что вы ищете - можете ли вы наполнить нас тем, что 'addActionListeners()' и 'addMouseListeners()' делает или что они должны делать? – Pedantic

+0

Когда программа запускается, я хочу, чтобы пользователь имел возможность изменить текст по умолчанию в текстовом поле (которое является «Программой»), но это не событие, которое можно поместить на него курсором ... 'addActionListeners()' и 'addMouseListeners()' являются частью [acm.program.Program] (https://cs.stanford.edu/people/eroberts/jtf/javadoc/student/acm/program/Program.html#addActionListeners()), и они может быть прокомментирован на данный момент, это не меняет мою проблему. –

+0

Если вы переопределяете поведение по умолчанию для прослушивателей мыши и/или прослушивателей действий, это может вызвать эту проблему, но ее невозможно угадать, если вы не можете показать код для этих методов. – Pedantic

ответ

0

я решил мою проблему, запустив программу с помощью Run > Run As > Java Application вместо Run > Run As > Java Applet

Я не понимаю разницы и ранее я всегда запускаю программу с помощью кнопки (зеленый круглый, с белой стрелкой) который, по-видимому, всегда работает как Applet.

Смежные вопросы