Avatar billede tanjaerichsen Nybegynder
03. oktober 2002 - 07:10 Der er 12 kommentarer og
1 løsning

Bestemt tegn indtastet

Hej.

Er der en metode i en af javapakkerne, som kan checke om et vist antal tegn er indtastet i et tekstfelt? Den skal f.eks. checke om det 4. tegn er indtastet i et tekstfelt.
Avatar billede disky Nybegynder
03. oktober 2002 - 07:19 #1
Hvis vi siger du bruger TextField og du har et object der hedder 'felt'

int laengde=felt.getText().getLenght();

Nu indeholder 'laengde' det antal tegn som er indtastet i feltet, inklusiv mellemrum og andre specialtegn.

derefter siger du f.eks.

if(laengde==4)
{
  //lav noget nu
}
Avatar billede ladyhawke Novice
03. oktober 2002 - 07:31 #2
lige en detalje: det er getLength()  (ikke getLenght()  ;o)
Avatar billede disky Nybegynder
03. oktober 2002 - 07:35 #3
ups, det har du helt ret i :-) Tak
Avatar billede ladyhawke Novice
03. oktober 2002 - 07:37 #4
Helt OK, det er hvad der kan ske i farten :o)
Avatar billede disky Nybegynder
03. oktober 2002 - 07:39 #5
Det har du helt ret i.
Avatar billede tanjaerichsen Nybegynder
03. oktober 2002 - 07:42 #6
Ja det har jeg også prøvet (jeg bruger blot length() i stedet), men på den måde kan jeg jo ikke checke, at det 4. tegn netop er indtastet.
Andre forslag?
Avatar billede ladyhawke Novice
03. oktober 2002 - 08:18 #7
Så bør du nok kigge på events og fange et event hver gang der tastes i tekst feltet, så kan du bruge diskys kode stump til at undersøge hvilket tegn der netop er blevet indtastet...
Avatar billede disky Nybegynder
03. oktober 2002 - 09:10 #8
Så skal du som jeg tidligere har nævnt bruge et flag til at holde styr på om der lige er blevet indtastet et 4. tegn, eller om der bare hele tiden har været 4 tegn.

TIlføj den funktionalitet til dit TextField's keypressed funktionalitet.
Avatar billede tanjaerichsen Nybegynder
03. oktober 2002 - 10:03 #9
Jeg har også gjort alt det, og den hopper videre til næste felt. Mit problem er, at jeg ikke kan checke på om der hele tiden har været 4 tegn. Jeg checker på om strengen er 4 karakterer lang, og hvis den er det, hopper cursoren videre til næste felt. Men når jeg så skal tilbage og rette i feltet, så er der jo i forvejen 4 tegn og så hopper cursoren videre.
Avatar billede tanjaerichsen Nybegynder
03. oktober 2002 - 10:24 #10
Det virker faktisk, men da jeg bruger Shift-Tab for at komme tilbage i feltet, så hopper den videre til næste felt. Hvis jeg bruger tab til at hoppe frem i feltet, så virker den perfekt. Det er vel egentlig ikke et problem jeg kan løse, andet end at jeg sætter en anden key til at hoppe tilbage i feltet med?!?
Avatar billede disky Nybegynder
03. oktober 2002 - 10:32 #11
så er det du skal bruge et flag der markere om der lige er blevet indtastet i feltet, og kun hoppe videre hvis dette er tilfældet.

Men hvis man kommer til feltet og der ikke er blevet indtastet noget, men der alligevel er 4 tegn i det, skal man ikke hoppe videre.

Du sætter flaget når du indtaster noget i feltet, og sletter det igen når fokus forsvinder fra feltet.
Avatar billede tanjaerichsen Nybegynder
03. oktober 2002 - 12:17 #12
ENDELIG virker det.....Mange tak for hjælpen.
Avatar billede disky Nybegynder
03. oktober 2002 - 12:22 #13
det glæder mig :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester