2013-02-22 4 views
1

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

final Text tmp0 = new Text(mBuy, SWT.SINGLE); 
tmp0.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); 

// Calculate Button 
Button tmp3 = new Button(mBuy, SWT.PUSH); 
tmp3.setText("Calculate"); 
tmp3.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true)); 

// if calculate button is pressed 
tmp3.addSelectionListener(new SelectionAdapter() { 
    public void widgetSelected(SelectionEvent e) { 
     //take the decimal value inside textbox 
     bPrice=Double.parseDouble(tmp0.getText()); 
     // don't show buy menu anymore 
     mBuy.dispose(); 

    } 
}); 
+0

Вы даже пытались использовать Google для этого? – Baz

+0

Вам не кажется, что это было первое, что я пробовал? – nbhgt

ответ

3

Это просто tmp0.getText(). Вы должны посмотреть на Javadocs for SWT.

+0

Это неправильно. Я получаю сообщение об ошибке, потому что строка, которую производит tmp0, равна NULL. Я знаю, что вы должны использовать verifylistener для проверки ввода для SWT, поэтому вы не можете просто использовать getText(). Любые другие идеи? Я опубликовал обновленный код, который дает мне ошибку NULL. – nbhgt

+0

Тогда это выглядит как ошибка в SWT. Он никогда не должен возвращать null: «Текст для текстового виджета - это символы в виджетах или пустая строка, если это никогда не было установлено». Вы также можете использовать 'getText' в' VerifyListener', он вернет текущий текст. –

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