Ho visto che questo è possibile in altri tipi di finestre di dialogo come "showConfirmDialog", dove si può specificare la quantità di pulsanti e il loro nome; ma questa stessa funzionalità è ottenibile quando si utilizza "showInputDialog"? Non riesco a trovare questo tipo di cose nell'API. Forse l'ho mancato, ma ogni aiuto è apprezzato.C'è un modo per avere solo il pulsante OK in un JOptionPane showInputDialog (e nessun pulsante CANCEL)?
risposta
Basta aggiungere un JPanel personalizzate come un messaggio a JOptionPane.showOptionDialog()
:
String[] options = {"OK"};
JPanel panel = new JPanel();
JLabel lbl = new JLabel("Enter Your name: ");
JTextField txt = new JTextField(10);
panel.add(lbl);
panel.add(txt);
int selectedOption = JOptionPane.showOptionDialog(null, panel, "The Title", JOptionPane.NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, options , options[0]);
if(selectedOption == 0)
{
String text = txt.getText();
// ...
}
grazie per averlo scritto! questo è molto chiaro. –
+1 per l'esempio :) – Maroun
Dovrebbe essere "il tuo nome" BTW;) –
JOptionPane.showInputDialog()
restituisce la stringa immessa dall'utente se l'utente fa clic su "OK" e restituisce null
in caso contrario. Vedere this:
Returns: ingresso dell'utente, o significato nullo l'utente ha annullato l'ingresso
Non si può fare questo usando showInputDialog()
Tuttavia, è possibile utilizzare JOptionPane#showOptionDialog():
Object[] buttons = {"OK"};
int res = JOptionPane.showOptionDialog(yourFrame,
"YourMessage","YourTitle",
JOptionPane....,
JOptionPane..., null, buttons , buttons[0]);
Come @HovercraftFullOfEels indicato nei commenti, è possibile aggiungere JTextField
al dialogo e raggiungere questo.
Sì, in questo modo è molto flessibile. 1+ –
Sono un po 'nuovo in Java, come posso ottenere l'input dell'utente usando questo metodo? –
No, 'showOptionDialog' è qualcosa di diverso da' showInputDialog'! –
Prova:
JOptionPane.showMessageDialog(frame, "Eggs are not supposed to be green.");
ho trovato in here
- 1. JOptionPane showConfirmDialog con un solo pulsante
- 2. Come gestire il pulsante Annulla in JOptionPane
- 3. Pulsante IAP iOS UIAlertView cancel
- 4. Android: Disabilitare DialogFragment OK/Cancel pulsanti
- 5. C'è un modo per usare cancel in Android JellyBean TimePickerDialog?
- 6. Puoi avere il pulsante 3D iOS 6 in un MKMapView?
- 7. Come avere un pulsante interruttore Lollipop
- 8. Pulsante Ok per Alert Dialog su Android
- 9. È ragionevole avere un pulsante "indietro" in un'app per Android?
- 10. aprire un URL al clic del pulsante ok in Android
- 11. Come avere immagine + testo in un pulsante in Tkinter
- 12. onclicklistener per il pulsante in un elenco
- 13. Il pulsante di annullamento JOptionPane non si cancellerà dalla finestra?
- 14. E 'possibile avere un pulsante personalizzato come Facebook?
- 15. Come cache solo per il pulsante Indietro
- 16. Javascript Conferma popup Sì, Nessun pulsante invece di OK e Annulla
- 17. C'è un modo per avere un pulsante completo del sito su un'app mobile senza javascript?
- 18. BUG - Nessun pulsante per selezionare il tag in IOS
- 19. ASP.NET MVC - Avere un pulsante di conferma con un modulo
- 20. Xpath per il pulsante di avere il testo come 'Nuovo'
- 21. Come creare un pulsante di Google Hangout per solo chat?
- 22. Imposta il pulsante "background" di un pulsante Nimbus
- 23. Controllo account utente sul pulsante OK
- 24. Stile di un pulsante JavaFX 2 utilizzando solo FXML - Come aggiungere un'immagine a un pulsante?
- 25. pulsante contatore e nuovo pulsante
- 26. listener per premere e rilasciare un pulsante
- 27. Nessun pulsante "Fine" su AVPlayerViewController
- 28. Java: Pulsanti personalizzati in showInputDialog
- 29. Come creare un pulsante Annulla in Bootstrap
- 30. Solo selezionare un solo pulsante di opzione da listview
Sì, è possibile. Con showOptionDialog, puoi personalizzare il pannello delle opzioni molto più liberamente. Modifica: come @Maroun ti mostra nella sua risposta. 1+ alla sua risposta. –