Vahvistusdialogi
ConfirmDialog on modaalinen dialogi, joka on suunniteltu sallimaan käyttäjän valita yhdestä enintään 3 vaihtoehdosta. Dialogi estää sovelluksen suorittamisen, kunnes käyttäjä vuorovaikuttaa sen kanssa tai se sulkeutuu aikakatkaisun vuoksi.
ConfirmDialog.Result result = OptionDialog.showConfirmDialog(
"Vahvistatko?",
"Vahvistus",
ConfirmDialog.OptionType.OK_CANCEL,
ConfirmDialog.MessageType.QUESTION);
Käytännöt
ConfirmDialog tarjoaa tavan kysyä käyttäjiltä vahvistusta tai valita useiden vaihtoehtojen välillä, kuten Kyllä/Ei tai OK/Peruuta, varmistaen, että he tunnustavat ja vahvistavat toimintonsa.
Näytä koodi
- Java
Tyypit
Vaihtoehtotyyppi
ConfirmDialog tukee seuraavia vaihtoehtotyyppejä, jotka määrittävät dialogissa näytettävät painikkeet:
OK: NäyttääOK-painikkeen.OK_CANCEL: NäyttääOK- jaPeruuta-painikkeet.ABORT_RETRY_IGNORE: NäyttääKeskeytä,Yritä uudelleenjaIgnoroi-painikkeet.YES_NO_CANCEL: NäyttääKyllä,EijaPeruuta-painikkeet.YES_NO: NäyttääKylläjaEi-painikkeet.RETRY_CANCEL: NäyttääYritä uudelleenjaPeruuta-painikkeet.CUSTOM: Näyttää mukautettuja painikkeita määritellyn mukaisesti.
Viestintyyppi
ConfirmDialog tukee seuraavia viestintyyppejä. Kun määrität tyyppiä, dialogi näyttää kuvakkeen viestin vieressä, ja dialogin teema päivittyy webforJ:n muotoilujärjestelmän sääntöjen mukaisesti.
PLAIN: Näyttää viestin ilman kuvaketta, käyttäen oletusteemaa.ERROR: Näyttää virhekuvakkeen viestin vieressä virheteeman ollessa aktiivinen.QUESTION: Näyttää kysymysmerkin kuvakkeen viestin vieressä, käyttäen ensisijaista teemaa.WARNING: Näyttää varoituskuvakkeen viestin vieressä varoitusteeman ollessa aktiivinen.INFO: Näyttää infokuvakkeen viestin vieressä, käyttäen info-teemaa.
Seuraavassa esimerkissä koodi määrittää vahvistusdialogin tyyppiä CUSTOM, jossa on mukautettu otsikko ja viesti.
Näytä koodi
- Java
Tulos
ConfirmDialog palauttaa tuloksen käyttäjän vuorovaikutuksen perusteella dialogin kanssa. Tämä tulos osoittaa, mikä painike käyttäjää napsautettiin tai suljettiinko dialogi aikakatkaisun vuoksi.
Tulos palautetaan show()-menetelmällä tai vastaavalla OptionDialog-menetelmällä, kuten alla on esitetty.
ConfirmDialog.Result-enum sisältää seuraavat mahdolliset tulokset:
OK: Käyttäjä napsauttiOK-painiketta.CANCEL: Käyttäjä napsauttiCANCEL-painiketta.YES: Käyttäjä napsauttiKyllä-painiketta.NO: Käyttäjä napsauttiEi-painiketta.ABORT: Käyttäjä napsauttiKeskeytä-painiketta.RETRY: Käyttäjä napsauttiYritä uudelleen-painiketta.IGNORE: Käyttäjä napsauttiIgnoroi-painiketta.FIRST_CUSTOM_BUTTON: Käyttäjä napsautti ensimmäistä mukautettua painiketta.SECOND_CUSTOM_BUTTON: Käyttäjä napsautti toista mukautettua painiketta.THIRD_CUSTOM_BUTTON: Käyttäjä napsautti kolmatta mukautettua painiketta.TIMEOUT: Dialogin aikakatkaisu.UNKNOWN: Tuntematon tulos, jota käytetään tyypillisesti oletus- tai virhetilassa.
if (result == ConfirmDialog.Result.FIRST_CUSTOM_BUTTON) {
OptionDialog.showMessageDialog("Muutokset hylättiin", "Hylätty", "Selvä");
} else {
OptionDialog.showMessageDialog(
"Muutokset tallennettiin", "Tallennettu", "Selvä", MessageDialog.MessageType.INFO);
}
Oletuspainike
ConfirmDialog antaa sinun määrittää oletuspainikkeen, joka on esivalittu, kun dialogi näytetään. Tämä parantaa käyttäjäkokemusta tarjoamalla ehdotetun toiminnan, jonka voi nopeasti vahvistaa painamalla Enter-näppäintä.
ConfirmDialog dialog = new ConfirmDialog(
"Oletko varma?", "Vahvista", ConfirmDialog.OptionType.YES_NO);
dialog.setDefaultButton(Button.SECOND); // toinen painike
dialog.show();
Painikkeiden teksti
Voit määrittää painikkeiden tekstin käyttämällä setButtonText(ConfirmDialog.Button button, String text) -menetelmää.
ConfirmDialog dialog = new ConfirmDialog(
"Oletko varma?", "Vahvista", ConfirmDialog.OptionType.CUSTOM);
dialog.setButtonText(ConfirmDialog.Button.FIRST, "Ehdottomasti");
dialog.setButtonText(ConfirmDialog.Button.SECOND, "Ei");
dialog.show();
HTML-käsittely
Oletuksena vahvistusdialogi käsittelee ja renderoi HTML-sisältöä. Voit sammuttaa tämän ominaisuuden määrittämällä sen näyttämään raakatekstiä sen sijaan.
ConfirmDialog dialog = new ConfirmDialog(
"<b>Oletko varma?</b>", "Vahvista",
ConfirmDialog.OptionType.YES_NO, ConfirmDialog.MessageType.QUESTION);
dialog.setRawText(true);
dialog.show();
Aikakatkaisu
ConfirmDialog antaa sinun määrittää aikakatkaisua ajan, jonka jälkeen dialogi sulkeutuu automaattisesti. Tämä ominaisuus on hyödyllinen ei-kriittisille vahvistuksille tai toimille, jotka eivät vaadi käyttäjän heti vuorovaikutusta.
Voit määrittää aikakatkaisun dialogille käyttämällä setTimeout(int timeout) -menetelmää. Aikakatkaisuaika on sekunneissa. Jos määritetty aika kuluu ilman, että käyttäjä vuorovaikuttaa, dialogi sulkeutuu automaattisesti.
ConfirmDialog dialog = new ConfirmDialog(
"Oletko varma?", "Vahvista", ConfirmDialog.OptionType.YES_NO);
dialog.setDefaultButton(Button.SECOND);
dialog.setTimeout(3);
ConfirmDialog.Result result = dialog.show();
switch (result) {
case TIMEOUT:
OptionDialog.showMessageDialog(
"Käytit liian kauan päättämiseen", "Aikakatkaisu", "Selvä",
MessageDialog.MessageType.WARNING);
break;
case YES:
OptionDialog.showMessageDialog(
"Napsautit Kyllä", "Kyllä", "Selvä",
MessageDialog.MessageType.INFO);
break;
default:
OptionDialog.showMessageDialog(
"Napsautit Ei", "Ei", "Selvä",
MessageDialog.MessageType.INFO);
break;
}
Parhaat käytännöt
- Selkeät ja ytimekkäät kehut: Varmista, että kehupäivämäärä selkeästi selittää, mitä toimintoa käyttäjältä kysytään vahvistettavaksi. Vältä epäselvyyksiä.
- Sopivat vaihtoehtotyypit: Valitse vaihtoehtotyypit, jotka vastaavat toiminnan kontekstia. Yksinkertaisiin kyllä/ei-päätöksiin käytä suoraviivaisia vaihtoehtoja. Monimutkaisemmissa tilanteissa tarjoa lisäpainikkeita, kuten "Peruuta", jotta käyttäjät voivat peruuttaa valinnat tekemättä päätöstä.
- Looginen oletuspainike: Aseta oletuspainike, joka vastaa todennäköisintä tai suositeltua käyttäjän toimintaa päätöksenteon sujuvoittamiseksi.
- Johdonmukainen teema: Yhdistele dialogin ja painikkeiden teemat sovelluksesi muotoilun kanssa, jotta saavutetaan yhtenäinen käyttäjäkokemus.
- Käytä aikakatkaisuja harkiten: Aseta aikakatkaisuja ei-kriittisille vahvistuksille varmistaen, että käyttäjillä on riittävästi aikaa lukea ja ymmärtää kehupäivämäärät.
- Vähennä käyttöä: Käytä vahvistusdialogeja säästeliäästi käyttäjätyytyväisyyden välttämiseksi. Varaudu niitä kriittisiin toimintoihin, jotka vaativat käyttäjän nimenomaista vahvistusta.