Java Syntax: Opbygning af en input-dialogboks

Besked dialogbokse er dejlige, når du vil informere brugeren om en meddelelse og få et simpelt svar (dvs. et JA- eller OK-klik), men der er tidspunkter, hvor du vil have brugeren til at give en lille smule data. Måske ønsker dit program et pop-up-vindue for at få fat i deres navn eller stjernetegn. Dette kan let opnås ved at bruge

showInputDialog 

metode til

JOptionPane 

klasse.

JOptionPane-klassen

At bruge

JOptionPane
klasse behøver du ikke lave et eksempel på en
JOptionPane

fordi det opretter dialogbokse ved hjælp af statiske metoder ogstatiske felter. Det opretter kun modale dialogbokse, hvilket er fint til input dialogbokse, fordi du generelt ønsker, at brugeren skal indtaste noget, før din applikation fortsætter med at køre.

Det

showInputDialog 

metoden overbelastes flere gange for at give dig et par muligheder for, hvordan dialogboksen for input vises. Det kan have et tekstfelt, en kombinationsboks eller en liste. Hver af disse komponenter kan have valgt en standardværdi.

Inputdialog med et tekstfelt

instagram viewer

Den mest almindelige input-dialog har simpelthen en meddelelse, et tekstfelt for brugeren at indtaste deres svar og en OK-knap:

Det

showInputDialog
metoden tager sig af at opbygge dialogvinduet, tekstfeltet og OK-knappen. Alt hvad du skal gøre er at give den overordnede komponent til dialogen og beskeden til brugeren. For den overordnede komponent bruger jeg
dette
nøgleord til at pege på
JFrame
dialogen oprettes fra. Du kan bruge null eller angive et navn på en anden container (f.eks.
JPanel
) som forælder. Definition af en overordnet komponent gør det muligt for dialogen at placere sig selv på skærmen i forhold til dens overordnede. Hvis det er indstillet til null, vises dialogen midt på skærmen.
Det
input variabel

fanger teksten, som brugeren indtaster i tekstfeltet.

Indtastningsdialog med en kombinationsboks

For at give brugeren et udvalg af valg fra en kombinationsboks skal du bruge en streng-array:

// Valgmuligheder for dialogboksen Combo BoxString [] 
valg = {"Mandag", "Tirsdag"
, "Onsdag", "Torsdag", "Fredag"};
// Inputdialog med en kombinationsboks 
Streng plukket = (streng) JOptionPane.showInputDialog (dette, "Vælg en dag:"
, "ComboBox Dialog", JOptionPane. QUESTION_MESSAGE
, null, valg, valg [0]);

Når jeg passerer en Strenge array for markeringsværdier beslutter metoden, at en kombinationsboks er den bedste måde at præsentere disse værdier for brugeren. Dette

showInputDialog

metoden returnerer en

Objekt

og fordi jeg ønsker at få tekstværdien for valg af kombinationsboks, har jeg defineret returværdien til at være en (

Snor

).

Bemærk også, at du kan bruge en af ​​OptionPanes beskedtyper til at give dialogboksen en vis fornemmelse. Dette kan tilsidesættes, hvis du passerer et ikon efter eget valg.

Inputdialog med en liste

Hvis

Snor
array du passerer til.
showInputDialog 
metoden har 20 eller flere poster, i stedet for at bruge en kombinationsboks vil den beslutte at vise markeringsværdierne i en listefelt.

Et komplet Java-kodeeksempel kan ses i Input Dialog Box-programmet. Hvis du er interesseret i at se de andre dialogbokse, som JOptionPane-klassen kan oprette, så kig på JOptionPane Option Chooser-programmet.

instagram story viewer