Input Dialog
InputDialog
on on modaalinen dialogi, joka on suunniteltu pyytämään käyttäjältä syötettä. Dialogi estää sovelluksen suorituksen, kunnes käyttäjä antaa syötteen tai sulkee dialogin.
Näytä koodi
- Java
Käytöt
InputDialog
tarjoaa tavan pyytää syötettä käyttäjiltä, kuten tekstiä, numeroita tai muita tietoja, varmistaen, että he antavat tarvittavat tiedot ennen etenemistä.
Tyypit
Syöttötyypit
InputDialog
tukee erilaisia syöttökenttätyyppejä, mikä mahdollistaa syöttötavan räätälöimisen erityisiin tarpeisiisi:
- TEKSTI: Normaali yksirivinen tekstisyöttö.
- SALASANA: Salasanasyöttökenttä, joka piilottaa käyttäjän syötteen.
- NUMERO: Numero syöttökenttä.
- SÄHKÖPOSTI: Syöttökenttä sähköpostiosoitteita varten.
- URL: Syöttökenttä URL-osoitteita varten.
- HAKU: Haku tekstisyöttökenttä.
- PÄIVÄ: Syöttökenttä päivien valitsemiseksi.
- AIKA: Syöttökenttä aikojen valitsemiseksi.
- PAIKALLINEN_AIKAMÄÄRÄ: Syöttökenttä paikallisen päivämäärän ja ajan valitsemiseksi.
- VÄRI: Syöttökenttä värin valitsemiseksi.
Viestityyppi
InputDialog
tukee seuraavia viestityyppejä. Kun määrität tyypin, dialogi näyttää ikonin viestin vieressä, ja dialogin teema päivittyy webforJ-suunnittelujärjestelmän sääntöjen mukaisesti.
YKSINKERTAINEN
: Näyttää viestin ilman ikonia käyttäen oletusteemaa.VIRHE
: Näyttää virheikoni viestin vieressä virheteemalla.KYSYMYS
: Näyttää kysymysmerkin ikonina viestin vieressä, käyttäen ensisijaisteemaa.VAROITUS
: Näyttää varoitusikoni viestin vieressä varoitusteemalla.TIETO
: Näyttää tietoikonin viestin vieressä, käyttäen tietoteemaa.
Alla olevassa esimerkissä käyttäjältä kysytään salasanansa syöttämistä päästäkseen sovellukseen. Jos kirjautuminen epäonnistuu, käyttäjältä kysytään uudelleen.
Näytä koodi
- Java
Tulos
InputDialog
palauttaa käyttäjän syötteen merkkijonona. Jos käyttäjä sulkee dialogin antamatta syötettä, tulos on null
.
Palautettu merkkijono palautetaan show()
-menetelmästä tai vastaavasta OptionDialog
-menetelmästä, kuten alla on esitetty.
String result = OptionDialog.showInputDialog(
"Ole hyvä ja syötä ikäsi:", "Ikäsyöttö", "", InputDialog.InputType.NUMBER);
if (result != null) {
OptionDialog.showMessageDialog("Annon: " + result, "Syöte vastaanotettu");
} else {
OptionDialog.showMessageDialog("Ei syötettä vastaanotettu", "Syöte peruutettu");
}
Oletusarvo
InputDialog
mahdollistaa oletusarvon määrittämisen, joka näkyy syöttökentässä, kun dialogi näytetään. Tämä voi tarjota käyttäjille ehdotuksen tai aiemmin syötetyn arvon.
InputDialog dialog = new InputDialog(
"Ole hyvä ja syötä nimesi:", "Nimesyöttö", "John Doe", InputDialog.InputType.TEXT);
String result = dialog.show();
Aikakatkaisu
InputDialog
mahdollistaa aikakatkaisin kestoon asettamisen, jonka jälkeen dialogi sulkeutuu automaattisesti. Tämä ominaisuus on hyödyllinen ei-kriittisille syötepyynnöille tai toiminnoille, jotka eivät vaadi käyttäjän välitöntä vuorovaikutusta.
Voit määrittää dialogin aikakatkaisun käyttämällä setTimeout(int timeout)
-menetelmää. Aikakatkaisun kesto on sekunteina. Jos määritetty aika umpeutuu ilman käyttäjän vuorovaikutusta, dialogi sulkeutuu automaattisesti.
InputDialog dialog = new InputDialog(
"Ole hyvä ja syötä nimesi:", "Nimesyöttö", "John Doe");
dialog.setTimeout(5);
String result = dialog.show();
OptionDialog.showMessageDialog(
"Annon: " + result, "Syöte vastaanotettu", "OK", MessageDialog.MessageType.INFO);
Best practices
- Selkeät ja Ytimekkäät Kehotukset: Varmista, että kehotusviesti selkeästi selittää, mitä tietoa käyttäjältä pyydetään.
- Sopivat Syöttötyypit: Valitse syöttötyypit, jotka vastaavat vaadittavaa tietoa varmistaaksesi tarkka ja asiaankuuluva käyttäjäsyöte.
- Loogiset Oletusarvot: Aseta oletusarvot, jotka tarjoavat hyödyllisiä ehdotuksia tai aiempia syötteitä käyttäjäsyötteen sujuvoittamiseksi.
- Aikakatkaisun Huolellinen Käyttö: Aseta aikakatkaisuja ei-kriittisille syötepyynnöille varmistaen, että käyttäjillä on tarpeeksi aikaa antaa vaadittavat tiedot.
- Ylikäytön Vähentäminen: Käytä syöttödialogeja säästeliäästi käyttäjien turhautumisen välttämiseksi. Varaudu niihin toimiin, jotka vaativat erityistä käyttäjäsyötettä.