ПредишенСледващото

 натискане на клавиш getKeyStroke (String keyString) - всички параметри са написани на един ред

keyString. правила за влизане, вижте документацията.

Получената натискане на клавиш или натиснете клавиша за освобождаване на класа на обекта след това се използва обект за прилагане на клавиатурната подредба интерфейс. Този обект определя реакцията на натискане на клавиш като обект, който реализира действие интерфейс. и съхранява набор от двойки - тип "ключ за действие" "натискане на клавиш - Действие". интерфейс за действие е описан в

Подобни действия механизъм за реакция за работа с клавиатура замества конвенционалния слушател обработка клавиатура събитие чрез добавянето на текст компонент.

Нов чифт "ключ - действие" се добавя към метод за набор

анулира addActionForKeyStroke (натискане на клавиш клавиш, за действие);

Целият набор от действия под формата на действие на тип масив [] може да бъде получено от

getBoundActions (). набор от обекти удар [] - метод getBoundKeyStrokes (). отделен

Noe действие действие връща метод getAction (удар).

Клавиатурна подредба тип обекти могат да бъдат оковани чрез задаване на родителския обект от setResolveParent (клавиатурната подредба). Ако двойка - ще бъде не е намерен "една от ключовите дейности" в обекта, след това ще се търси в обекта майка, и по-нататък по веригата.

Swing библиотеката не въвеждат отворен интерфейс на клавиатурната подредба клас. Вместо това, изпълнението се извършва затворено поле JTextComponent клас. Когато създавате текст компонент, това поле е изпълнен с макет по подразбиране DEFAULT_KEYMAP на. Прегледайте текущата оформление може да бъде getKeymap) метод (. и инсталирате нов такъв - от setKeymap (клавиатурната подредба). Добавяне на ново оформление във веригата може да бъде статичен метод

addKeymap (String име, клавиатурната подредба родител);

Печат текста на документа

Няколко логически методи за печат (клас JTextComponent) предизвика появата на екрана на стандартен диалогов прозорец за отпечатване кутия, която помага изберете принтера и да отпечатате съдържанието на компонента на него. Методи връщат фалшиви. ако потребителят анулиране отпечатъка, като кликнете върху бутона Отказ в диалоговия прозорец, и вярно друго.

 печат () - печат компонент текст, без горни и долни колонтитули.

 печат (MessageFormat хедър, футър MessageFormat) - се добавя към горната печат

горния и долния на долната глава, колонтитул, оформен като клас на обекти

MessageFormat на java.text пакет.

Други, по-сложни техники за отпечатване използват печатния сървър, но това е извън обхвата на тази книга.

Въпреки, че вътрешната структура на компонентите на текстови е трудно, тяхното нормално използване не представлява трудности.

поле за въвеждане на един ред, създаден от един от дизайнерите:

 JTextField (междинно колони) - влизане празното поле с прозорец, чийто размер е достатъчен да побере колони от символи. В областта, можете да въведете произволен брой символи, прозорецът ще се превърта;

 JTextField (String текст) - въвеждане на текст кутия с първоначален текст;

 JTextField (String текст, Int колони) - поле за въвеждане с първоначалния текст и ширината на текст

солна колони от символи;

 JTextField (Документ док, String текстови, вътр колони) - определено данни модел док.

Моделът на данните могат да се заменят с setDocument (Документ). Не е допустимо да се замени целия модел, а само шрифт - от setFont (Font).

Методи наследени от JTextComponent. ви позволява да поставите текста в полето за въвеждане чрез setText (String). получите всички getText на метод текст (). част от getText на метод текст (INT офсет, дължина вътр) или само избрана част от текста, като

Текст, подчерта в поле може да бъде заменен с друго съдържание, текст

Стандартният текст в областта е натиснат наляво. Промяна обикновено е възможно чрез

setHorizontalAlignment (междинно съединение). го пита един от константи: НАЛЯВО. ЦЕНТЪР. ПРАВО. ВОДЕЩА. ИЗХОДЯЩИЯ клас JTextField.

Стандартният текст в областта може да се редактира, но е позволено да се създаде поле само за четене наследен от setEditable (фалшиво).

В областта, можете да зададете нов курсора от setCaret (Caret). Това даде възможност само да промените цвета на курсора от setCaretColor (Color). Позицията на курсора могат да бъдат проследени чрез getCaretPosition (). набор от софтуер - метод setCaretPosition (инт). Преместване на курсора програмно чрез избиране на текстовата част по този начин, че е възможно (инт) метод moveCaretPosition.

Границите на избраната част се рециклира getSelectionStart () и getSelectionEnd (),

и Комплект - методи setSelectionStart (междинно съединение) и setSelectionEnd (междинно съединение).

Цветът на избрания текст, можете да укажете начина на setSelectedTextColor (Color). и цвета на фона на избрания текст - от setSelectionColor (Color).

Обява 12.1 е пример за това текстово поле за въвеждане на номера на мира.

Обявата 12.1. Digit поле

внос java.awt * .; внос javax.swing * .;

обществени клас NumberText простира JFrame

JLabel L = нов JLabel ( "Въведете числата:");

супер ( "текст"); setLayout (нов FlowLayout ());

// въведете филтър входни символи

((PlainDocument) tf.getDocument ()). setDocumentFilter (нов NumberFilter ());

// Текстът ще бъде отпусната само червено tf.setSelectedTextColor (Color.red);

// Когато изберете текст фон ще остане бяла tf.setSelectionColor (Color.white);

// курсора е червен tf.setCaretColor (Color.red); l.setLabelFor (TF);

setSize (400, 400); setDefaultCloseOperation (EXIT_ON_CLOSE); setVisible (истина);

публично статично невалидни основни (String [] опцията)

// Филтър въвеждане

клас NumberFilter простира DocumentFilter

// Замяна един метод

обществени невалидни insertString (FilterBypass еб, вътр поз, String текстови, AttributeSet ATTR)

Integer.parseInt (текст); // Въведете числата?

// Ако не цифрата, символът не влиза super.insertString (еб, 0 ",", ATTR); се върне;

// Ако въведете цифрите, то тя трябва да бъде вписано в поле super.insertString (еб, поз, текст, ATTR);

област парола JPasswordField

JPasswordField клас директно простира класа JTextField. Ето защо, за да го принадлежи всичко казано по-горе. Една от разликите е, че в тази област се повтаря един знак, вместо въвеждане на знаци по подразбиране - звездичка. Една звезда може да бъде заменен от друг характер, като се използва метод setEchoChar (Чар).

Втората разлика е, че вместо getText () метод getPassword () метод се използва, за да получите текста от поле за парола. връща масив от харак [] символи тип. а не като низ.

Друг удължаване на клас JTextField на - клас JFormattedTextField - предназначена за работа с обекти, които съдържат символи като дата. Номер. Въпреки това, кон-

клас (Object) метод struktor JFormattedTextField и setValue (Object) разрешително включена

JFormattedTextField FTF = нов JFormattedTextField (нова Дата ()); ftf.addActionListener (това);

// промяна на датата. След това натиснете бутона

обществени невалидни actionPerformed (ActionEvent д)

getValue () метод връща тип обект обекта на. получената обратна трансформация редактира в-лайн прозорец към оригиналния обект.

Трансформацията на обекта в низ и обратно са били инвестирани в JFormattedTextField абстрактен клас AbstractFormatter. За тази цел, тя има методи

valueToString (обекта) и stringToValue (стринга). Тези методи оставени абстрактно. зало-

Тод инсталиране (JFormattedTextField) AbstractFormatter клас или да използвате konst-

или от setFormatter (AbstractFormatter) клас JFormattedTextField.

Освен трансформация обект, AbstractFormatter определя друг пример на клас и например DocumentFilter NavigationFilter клас. които могат да бъдат получени по методите,

роля - да се провери и филтриране на текст, което позволява само определени символи, въведени в полето.

Библиотеката Swing е реализацията на един клас AbstractFormatter - неговото удължаване

DefaultFormatter. За да се превърне обекта в метод низ valueToString а (Object) в

Свързани статии

Подкрепете проекта - споделете линка, благодаря!