2010-04-28 19 views
6

Chcę wiedzieć, w jaki sposób mogę zrobić MessageBox z trzech okna wejściowego ..Jak zdobyć JOptionPane z trzech pól tekstowych

tak:

JOptionPane.showInputMessageDialog("Enter your FirstName"); 
JOptionPane.showInputMessageDialog("Enter your MiddleName"); 
JOptionPane.showInputMessageDialog("Enter your LastName"); 

ale chcę jeden komunikat ma trzy wejścia pudła.

Odpowiedz

1

Nie można tego zrobić z JOptionPane. Utwórz numer JDialog i dodaj do niego trzy numery: JTextField. A JDialog zablokuje dzwoniącego, gdy zadzwonisz pod numer setVisible(true), więc łatwo jest utworzyć okno dialogowe, które czeka na wprowadzenie danych przez użytkownika przed jego zwrotem.

1

showInputMessageDialog i jego bracia to proste sposoby na wyrobienie prostego "standardowego" okna dialogowego. W przypadku bardziej skomplikowanych dialogów jestem prawie pewien, że będziesz musiał podklasę JDialog lub podobną.

3

Zbuduj JPanel (supose to nazwane InputPanel) z trzema JtextFields do wejścia, a następnie to zrobić:

if (JOptionPane.YES_OPTION == JOptionPane.showconfirmDialog(
    parentComponent, inputPanel, "Enter your data", JOptionPane.YES_NO_OPTION) { 

    // retrieve data from the JTextFields and do things 

} else { 

    // User close the dialog, do things... or not 

} 
+0

Zreformowany kod; proszę cofnąć, jeśli jest niepoprawna. – trashgod

1

Jak Telkontar zasugerował można dodawać komponenty Swing (jak JPanel) do panelu opcji. Łatwo więc skorzystać z automatycznego tworzenia przycisków, a nie od zera, budując własny JDialog.

Jest jednak jeden mały problem. Fokus zostanie ustawiony na pierwszym przycisku, a nie na pierwszym komponencie panelu. Aby obejść ten problem, wypróbuj rozwiązanie przedstawione w artykule Dialog Focus.

-1

można znaleźć standardową Java Tutorial przykład tutaj:

Click Here to Open the example java file

Przykładem ma tylko jedno pole tekstowe, ale przykład jest wystarczająco jasne, aby go przedłużyć.

+0

Nie, nie jest. Jest cały problem skupienia. –

+0

Czy mógłbyś proszę o opracowanie? – Sampath

Powiązane problemy