Változás követés szöveges elemek java, java blog csak mintegy

Néha szükség van, hogy frissítse a részét a felhasználói felület, ha a felhasználó szerkeszti a szöveget, anélkül, hogy megvárná, amíg a felhasználó rákattint a gombra. Az alábbiakban egy egyszerű példát. Mi megjelenítéséhez három szöveges mezők piros, kék és zöld komponenseket. Amikor megváltoztatja a tartalmát a szöveges mezők, frissítenie kell a színt. Ábra. Az 1. ábra a futó alkalmazás kódját, amely bemutatásra kerül a végén.

Változás követés szöveges elemek java, java blog csak mintegy
1. ábra. Változásainak nyomon követése a szövegmezőbe.

Először is vegyük figyelembe, hogy a pálya billentyűk a billentyűzeten - ez nem teljesen megfelelő ötlet. Az a tény, hogy egyes billentyűk (pl nyíl billentyűk) nem módosíthatja a szöveget.

A szöveg lehet frissíteni eredményeként végrehajtott műveleteket az egérrel (például használja a középső egérgombbal beszúrni a rendszerben tárolt adatok X11). Ehelyett meg kell „kérni” a dokumentum (és nem a szöveg komponens), hogy jelezze, ha változás történik az adatok. Ez szükségessé teszi a hallgató dokumentum (dokumentum hallgató):

textField. getDocument (). addDocumentListener (hallgató);

Ha a szöveg változott, hívja az alábbi módszerek valamelyikét:

void insertUpdate (DocumentEvent esemény)

void removeUpdate (DocumentEvent esemény)

void changeUpdate (DocumentEvent esemény)

Az első két módszer nevezzük, amikor behelyezi vagy karakter törléséhez. A harmadik módszer a szöveges mezők nem hívják egyáltalán. Bonyolultabb típusú dokumentumokat lehet hivatkozni néhány más változás, mint például változások a formázást.

Sajnos nincs mód jelenteni változás a szövegben egyetlen visszahívás - a szabály, akkor nem kell aggódnia, hogy hogyan változik. Sőt, ebben az esetben nem is egy különleges besorolású. Így a hallgató dokumentum végre kell hajtania mind a három módszer. Az alábbiakban bemutatjuk, hogy mit tesznek a program:

SetColor () metódus GetText módszer szerezni húrok a felhasználó által bevitt egy adott időpontban, a szöveges mezők és a színes beállítást.

A program egyik korlátozás. A felhasználó adja meg a szöveget a szövegmezőbe hibákkal (például „meshina” helyett a „gép”), vagy akár hagyja üresen. Amíg elkapjuk kivételek NumberFormatException. által generált parseInt. és egyszerűen nem frissíti a színt, ha egy bejegyzést a szöveges mező nem szám.

Program kód: