Diskuze: Začatečník neví: Jak povolit ve vstupu jeden znak?

Java Java Začatečník neví: Jak povolit ve vstupu jeden znak?

Aktivity (1)
Avatar
adamzrc
Člen
Avatar
adamzrc:29.11.2016 16:21

Zdar a sílu.
Potřeboval bych poradit, jak udělám, aby program pokračoval ihned po tom co uživatel zadá znak? Například když má možnosti 1, 2, 3, aby stiskl číslo, ale už nebylo potřeba stisknout enter.

 
Odpovědět 29.11.2016 16:21
Avatar
Marian Benčat
Redaktor
Avatar
Odpovídá na adamzrc
Marian Benčat:29.11.2016 16:26

System.in.read()

a asi to budes muset obalit do catche. Do javy jeste takoveto advanced veci jako ma treba C# nebo Pascal readkey nedorazily.

Editováno 29.11.2016 16:27
Nahoru Odpovědět 29.11.2016 16:26
"C# 3.0 (2007) volal Java 8 (2014), že chce svoje featury zpět"
Avatar
jan valenta
Člen
Avatar
jan valenta:29.11.2016 17:28

určitě to najdeš tady měly by být použitelné metody keyTyped, keyPressed i keyReleased https://docs.oracle.com/…eyEvent.html#…
*ale je to trochu kostrbatý, musel bys tam to udělat pro každou číslici zvlášť

Editováno 29.11.2016 17:30
 
Nahoru Odpovědět 29.11.2016 17:28
Avatar
adamzrc
Člen
Avatar
adamzrc:29.11.2016 17:41

Díky. Jdu se tím prohrbávat. :-D

 
Nahoru Odpovědět 29.11.2016 17:41
Avatar
Marian Benčat
Redaktor
Avatar
Odpovídá na jan valenta
Marian Benčat:29.11.2016 17:56

on pouziva AWTcko? Ja tam nic takoveho nevidim.. on ma snad konzolovou aplikaci ne.......

Nahoru Odpovědět 29.11.2016 17:56
"C# 3.0 (2007) volal Java 8 (2014), že chce svoje featury zpět"
Avatar
Atrament
Člen
Avatar
Odpovídá na adamzrc
Atrament:29.11.2016 19:09

Java v konzoli tohle v základu nepodporuje pokud vím. Ani to System.in.read() ti nebude fungovat jak chceš, stejně to bude čekat na Enter.

Jiná situace je v GUI aplikaci, kde můžeš použít věci co napsal jan valenta ale na konzoli bys musel použít nějakou knihovnu nejlépe asi JCurses.

 
Nahoru Odpovědět 29.11.2016 19:09
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.