Java-syntaxis: een invoerdialoogvenster bouwen

Berichtendialoogvensters zijn geweldig wanneer u de gebruiker wilt informeren over een bericht en een eenvoudig antwoord wilt krijgen (d.w.z. een JA- of OK-klik), maar er zijn momenten waarop u wilt dat de gebruiker een klein beetje gegevens geeft. Misschien wil uw programma een pop-upvenster om hun naam of sterrenbeeld te pakken. Dit kan eenvoudig worden bereikt met de

showInputDialog 

methode van de

JOptionPane 

klasse.

De JOptionPane-klasse

Om de

JOptionPane
klasse hoeft u geen instantie te maken van een
JOptionPane

omdat het dialoogvensters creëert door het gebruik van statische methoden enstatische velden. Er worden alleen modale dialoogvensters gemaakt, wat prima is voor invoerdialoogvensters, omdat u in het algemeen wilt dat de gebruiker iets invoert voordat uw toepassing wordt uitgevoerd.

De

showInputDialog 

methode is meerdere keren overbelast om u een paar opties te geven over hoe het invoerdialoogvenster verschijnt. Het kan een tekstveld, een keuzelijst met invoervak ​​of een lijst hebben. Voor elk van deze componenten kan een standaardwaarde zijn geselecteerd.

instagram viewer

Invoerdialoogvenster met een tekstveld

Het meest voorkomende invoerdialoogvenster heeft gewoon een bericht, een tekstveld voor de gebruiker om zijn antwoord in te voeren en een OK-knop:

De

showInputDialog
methode zorgt voor het bouwen van het dialoogvenster, het tekstveld en de OK knop. Het enige dat u hoeft te doen, is de bovenliggende component voor het dialoogvenster en het bericht aan de gebruiker opgeven. Voor de bovenliggende component gebruik ik de
deze
trefwoord om naar de
JFrame
het dialoogvenster is gemaakt van. U kunt null gebruiken of een naam van een andere container specificeren (bijv.
JPanel
) als de ouder. Door een oudercomponent te definiëren, kan het dialoogvenster zichzelf op het scherm positioneren ten opzichte van de ouder. Als het is ingesteld op null, verschijnt het dialoogvenster in het midden van het scherm.
De
ingangsvariabele

legt de tekst vast die de gebruiker invoert in het tekstveld.

Invoerdialoogvenster met een keuzelijst met invoervak

Om de gebruiker een keuze te geven uit een keuzelijst met invoervak, moet u een String-array gebruiken:

// Opties voor de keuzelijst met invoervak ​​DialString [] 
keuzes = {"maandag", "dinsdag"
 ,"Woensdag donderdag vrijdag"};
// Invoerdialoogvenster met een keuzelijst met invoervak 
String uitgezocht = (String) JOptionPane.showInputDialog (dit, "Kies een dag:"
, "ComboBox Dialog", JOptionPane. QUESTION_MESSAGE
, null, keuzes, keuzes [0]);

Als ik een String-reeks voor de selectiewaarden beslist de methode dat een keuzelijst met invoervak ​​de beste manier is om die waarden aan de gebruiker te presenteren. Deze

showInputDialog

methode retourneert een

Voorwerp

en omdat ik de tekstwaarde van de keuzelijst met invoervak ​​wil ophalen, heb ik de retourwaarde gedefinieerd als een (

Draad

).

Merk ook op dat u een van de berichttypen van OptionPane kunt gebruiken om het dialoogvenster een bepaald gevoel te geven. Dit kan worden opgeheven als u een pictogram naar eigen keuze doorgeeft.

Invoerdialoog met een lijst

Als de

Draad
array die u doorgeeft aan de.
showInputDialog 
methode heeft 20 of meer items en in plaats van een keuzelijst met invoervak ​​te gebruiken, wordt besloten om de selectiewaarden in een keuzelijst te tonen.

Een volledig Java-codevoorbeeld kan worden bekeken in het Input Dialog Box Program. Als u geïnteresseerd bent in de andere dialoogvensters die de JOptionPane-klasse kan maken, kijk dan eens naar het JOptionPane Option Chooser-programma.

instagram story viewer