>  기사  >  Java  >  JOptionPane을 사용하여 여러 JTextField 및 JLabel이 포함된 팝업 양식을 만드는 방법은 무엇입니까?

JOptionPane을 사용하여 여러 JTextField 및 JLabel이 포함된 팝업 양식을 만드는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-08 15:07:02769검색

How to Create a Popup Form with Multiple JTextFields and JLabels Using JOptionPane?

여러 JTextField 및 JLabel을 사용하여 팝업 양식 표시

문제:

사용자 요구 사항은 팝업을 표시하는 것입니다. 버튼 클릭 시 두 개 이상의 JTextField 및 JLabel이 포함된 양식이 있지만 JOptionPane.showInputDialog()를 사용하는 것은 허용되는 솔루션이 아닙니다.

답변:

JOptionPane 활용을 고려하세요. 구성 요소 수에도 불구하고 showInputDialog() 또는 showMessageDialog()와 같은 메서드.

추가 고려 사항:

  • JOptionPane 선택은 필요한 형식에 따라 더 달라집니다. 표시된 요소 수보다 더 많습니다.
  • "대화 상자 초점"에 설명된 접근 방식을 사용하면 특정 구성 요소에 초점을 직접 맞출 수 있습니다.

샘플 코드:

다음 코드 조각은 JOptionPane과 함께 JPanel, JComboBox 및 JTextField를 사용하여 팝업 양식을 구현하는 방법을 보여줍니다.

import java.awt.EventQueue;
import java.awt.GridLayout;
import javax.swing.*;

class JOptionPaneTest {

    private static void display() {
        String[] items = {"One", "Two", "Three", "Four", "Five"};
        JComboBox<String> combo = new JComboBox<>(items);
        JTextField field1 = new JTextField("1234.56");
        JTextField field2 = new JTextField("9876.54");
        JPanel panel = new JPanel(new GridLayout(0, 1));
        panel.add(combo);
        panel.add(new JLabel("Field 1:"));
        panel.add(field1);
        panel.add(new JLabel("Field 2:"));
        panel.add(field2);
        int result = JOptionPane.showConfirmDialog(null, panel, "Test",
            JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE);
        if (result == JOptionPane.OK_OPTION) {
            System.out.println(combo.getSelectedItem()
                + " " + field1.getText()
                + " " + field2.getText());
        } else {
            System.out.println("Cancelled");
        }
    }

    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {
                display();
            }
        });
    }
}

위 내용은 JOptionPane을 사용하여 여러 JTextField 및 JLabel이 포함된 팝업 양식을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.