2014-02-10 5 views
1

Я знаю, что нижеприведенный код должен форматировать FormattedTextField, но он, похоже, ничего не делает для формы (показано на рисунке ниже). Я хотел, когда форма загружается: текстовое поле, чтобы выглядеть примерно такНовичок ... застрял над тем, как использовать FormattedFields в java для вставки дат

00/00/2014 - 12:00 утра

Если пользователь имеет возможность

  • введите datelike информация вокруг символов разделителей (/ или :)

  • Но когда пользователь не может удалить эти символов разделителей

Код:

package datefield; 

import javax.swing.JFormattedTextField; 
import javax.swing.text.DateFormatter; 


public class NewJFrame extends javax.swing.JFrame { 

    public NewJFrame() { 
     initComponents(); 
     JFormattedTextField dateField = new JFormattedTextField(new DateFormatter(/*...*/)); 
    } 

Скриншот:

Я не смог показать картину, как мне нужно 10 репутации, но ссылку на картинку ниже http://i.stack.imgur.com/sO3em.png

+1

Только примечание: введенные вручную строки дат являются для птиц, даже если вы можете заставить формат с 'JFormattedTextField'. Вместо этого я предлагаю использовать [JDateChooser] (http://toedter.com/jcalendar/). – ryvantage

ответ

5

Итак, что происходит в комментарии здесь:

JFormattedTextField dateField = new JFormattedTextField(new DateFormatter(/*...*/));? 

По состоянию на no w, это просто комментарий, так что это Using a default constructor, что мало что делает.

Это означает, что вы должны инициализировать DateFormatter с помощью аргументов, но здесь мы помещаем только комментарии /* */, то есть он использует конструктор по умолчанию.

Но все, что я вам говорю, это просто информация об окружающей среде. Вы должны понять это сами! Тогда вы будете гордиться начинающим Java ++

See here to see API page for JFormattedTextField

Также связанно: Java JFormattedTextField for typing dates