используя Java Swing - PullRequest
       0

используя Java Swing

0 голосов
/ 28 января 2011

Мне нужно ввести значение в мой класс из пользовательского интерфейса (Swing), а затем запустить мой метод, нажав кнопку. Что мне делать?

Ответы [ 3 ]

2 голосов
/ 27 мая 2011

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

public class ButtonExample extends JPanel
{
    private JTextField _text;

    public ButtonExample()
    {
        _text = new JTextField();

        setLayout( new BorderLayout() );
        add( _text, BorderLayout.NORTH );
        add( new JButton( new CaptureTextAction() ), BorderLayout.SOUTH );
    }

    private class CaptureTextAction extends AbstractAction
    {
        private CaptureTextAction()
        {
            super( "Click Me" );
        }

        @Override
        public void actionPerformed( ActionEvent ae )
        {
            String textToCapture = _text.getText();

            // do something interesting with the text
        }
    }
}
2 голосов
/ 28 января 2011
0 голосов
/ 21 мая 2012

Swing - это просто пользовательский интерфейс, который вы предоставляете своему приложению.это работает так ... у вас есть кнопки, панели и все, что вам нужно для обеспечения правильного интерфейса, а это значит, что если вам нужно вводить текст, вы поместите текстовое поле или textArea в свой пользовательский интерфейс

Приложения Swing основаны на событиях, то есть основное различие между консольными и оконными приложениями, консольное приложение является последовательным, оно компилирует, а затем выполняет код последовательно, не принимая во внимание то, как вы взаимодействуете с ним.

aПриложение Swing, с другой стороны, основано на событиях, пока какое-либо событие не будет запущено и поймано, что оно ничего не сделает, в Java вы просто обрабатываете событие, а это означает, что то, что происходит после того, как событие происходит, определяется программистом.

предположим, что происходит событие нажатия кнопки, и к элементу присоединен слушатель, после чего вызывается функция actionPerformed и выполняется

предположим, что вы хотите получить имя пользователя из приложения

 JButton btnSubmit = new JButton("Submit");
 JTextField txtName = new JTextField("", 4);

btnSubmit.addActionListener(new ActionListener(){
   public void actionPerformed(ActionEvent e){
     String name = txtName.getText();//see below for explanation
     printInfo();//write the function call statements here if you want them to be executed when button is clicked

}
});

всякий раз, когда нажимается кнопка или, в более общем смысле, любаяпроисходит событие на кнопке, затем он создает строковый объект в пуле строк и присваивает ему значение текстового поля в момент нажатия кнопки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...