Java-Swing编程之对话框案例详解

package com.xushouwei.cn.photo;

import java.awt.GraphicsConfiguration;

import java.awt.GridLayout;

import java.awt.HeadlessException;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JTextField;

import javax.swing.SwingConstants;

import javax.swing.SwingUtilities;

import javax.swing.UIManager;

public class FeedInfo extends JFrame {

private JLabel jl1,jl2,jl3;

private JTextField jtf1,jtf2,jtf3;

private JPanel jp1;

public FeedInfo(){

// TODO Auto-generated constructor stub

super(“Feed Information”);

setSize(400,105);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jl1=new JLabel(“Name:”,SwingConstants.RIGHT);

jl2=new JLabel(“URL:”,SwingConstants.RIGHT);

jl3=new JLabel(“Type:”,SwingConstants.RIGHT);

String response1=JOptionPane.showInputDialog(null,”Enter the site name:”);

jtf1=new JTextField(response1,20);

String response2=JOptionPane.showInputDialog(null,”Enter the site address:”);

jtf2=new JTextField(response2,20);

String[] choices={“Personal”,”Commercial”,”Unknown”};

int response3=JOptionPane.showOptionDialog(null, “What type of site is it?”, “Site Type”, 0, JOptionPane.QUESTION_MESSAGE, null, choices, choices[0]);

jtf3=new JTextField(choices[response3],20);

this.setLayout(new GridLayout(3,2));

this.add(jl1);

this.add(jtf1);

this.add(jl2);

this.add(jtf2);

this.add(jl3);

this.add(jtf3);

this.setLookAndFeel();

this.setVisible(true);

}

private void setLookAndFeel() {

// TODO Auto-generated method stub

try {

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

SwingUtilities.updateComponentTreeUI(this);

} catch (Exception e) {

// TODO: handle exception

e.printStackTrace();

}

}

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

FeedInfo fi=new FeedInfo();

}

}