Üzenet párbeszédpanelek nagyszerűek, ha egy üzenetet szeretne értesíteni a felhasználóról, és egyszerű választ (például IGEN vagy OK kattintást) szeretne kapni, de vannak olyan esetek, amikor azt akarja, hogy a felhasználó adjon egy kis adatot. Lehet, hogy a program egy felbukkanó ablakot akarja, hogy megragadja nevét vagy csillagjelét. Ez könnyen elérhető a
showInputDialog
módszer
JOptionPane
osztály.
A JOptionPane osztály
A
JOptionPaneosztályban nem kell a példányt létrehoznia
JOptionPane
mert párbeszédpaneleket hoz létre a statikus módszerek ésstatikus mezők. Csak modális párbeszédpaneleket hoz létre, ami jó a beviteli párbeszédpanelek számára, mert általában azt akarja, hogy a felhasználó adjon meg valamit, mielőtt az alkalmazás fut.
Az
showInputDialog
metódust többször túlterhelik, hogy néhány lehetőséget kapjon a beviteli párbeszédpanel megjelenéséről. Lehet szöveges mezővel, kombinált mezővel vagy listával. Ezen komponensek mindegyikének lehet alapértelmezett értéke.
Beviteli párbeszédablak szövegmezővel
A leggyakoribb beviteli párbeszédpanelen egyszerűen van egy üzenet, egy szöveges mező, amellyel a felhasználó megadhatja a választ, és egy OK gomb:
Az
showInputDialogA módszer gondoskodik a párbeszédablak, a szövegmező és az OK gomb elkészítéséről. Csak annyit kell tennie, hogy biztosítja a párbeszédpanel szülő összetevőjét és az üzenetet a felhasználó számára. A szülő összetevőhöz a
ezkulcsszó a
JFrameaz ablak létrehozása Használhatja a null értéket, vagy megadhat egy másik tároló nevét (pl.
JPanel) mint szülő. A szülő összetevő meghatározása lehetővé teszi a párbeszédpanelen, hogy a képernyőn a szülőhöz képest helyezkedjen el. Ha nullára van állítva, akkor a párbeszédpanel jelenik meg a képernyő közepén.
Az
bemeneti változó
rögzíti azt a szöveget, amelyet a felhasználó beír a szövegmezőbe.
Beviteli párbeszédpanel kombinált dobozzal
Annak érdekében, hogy a felhasználó választhasson egy kombinált dobozból, String tömböt kell használnia:
// A kombinált mező párbeszédpanelString []
választás = {"hétfő", "kedd"
, "Szerda", "csütörtök", "péntek"};
// Beviteli párbeszédpanel kombinált mezővel
Karakterlánc kiválasztva = (Karakterlánc) JOptionPane.showInputDialog (ez: "Válasszon egy napot:"
, "ComboBox Dialog", JOptionPane. QUESTION_MESSAGE
, null, választások, választások [0]);
Ahogy elhaladok a Karakterlánc tömb a kiválasztási értékeknél a módszer úgy dönt, hogy a kombinált doboz a legjobb módja annak, hogy ezeket az értékeket megjelenítse a felhasználó számára. Ez
showInputDialog
metódus egy
Tárgy
és mivel szeretném megkapni a kombinált doboz kiválasztásának szöveges értékét, a visszatérési értéket a (
Húr
).
Azt is vegye figyelembe, hogy az OptionPane egyik üzenettípusával megadhatja a párbeszédpanel bizonyos érzetét. Ez felülbírálható, ha átad egy saját választott ikont.
Beviteli párbeszédpanel egy listával
Ha a
Húrtömb, amit átad a.
showInputDialogA módszernek 20 vagy több bejegyzés van, akkor a kombinált mező használata helyett úgy dönt, hogy a kiválasztási értékeket egy listában jeleníti meg.
A teljes Java kód példája megtekinthető az Input Dialog Box programban. Ha érdekli a többi párbeszédpanel, amelyet a JOptionPane osztály létrehozhat, akkor tekintse meg a JOptionPane Option Chooser programot.