当前位置:  技术问答>java相关

高分求助一个小程序弹出对话框的例子

    来源: 互联网  发布时间:2015-01-17

    本文导语:  我做了一个小程序,可是我不知道在java中怎样才能象VC中一样自如地弹出自己的对话框,以便让用户输入自己的数据。 请问我该怎么做才能弹出一个对话框,让用户输入一些数据。谁有这方面的例子啊?给我一个吧...

我做了一个小程序,可是我不知道在java中怎样才能象VC中一样自如地弹出自己的对话框,以便让用户输入自己的数据。
请问我该怎么做才能弹出一个对话框,让用户输入一些数据。谁有这方面的例子啊?给我一个吧。

|
我给你,几个文件如下:
------------------------------------------------------
1、
package mypjjv;

import javax.swing.UIManager;
import java.awt.*;

public class MApplication {
  boolean packFrame = false;

  /**Construct the application*/
  public MApplication() {
    Frame1 frame = new Frame1();
    //Validate frames that have preset sizes
    //Pack frames that have useful preferred size info, e.g. from their layout
    if (packFrame) {
      frame.pack();
    }
    else {
      frame.validate();
    }
    //Center the window
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    Dimension frameSize = frame.getSize();
    if (frameSize.height > screenSize.height) {
      frameSize.height = screenSize.height;
    }
    if (frameSize.width > screenSize.width) {
      frameSize.width = screenSize.width;
    }
    frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
    frame.setVisible(true);
  }
  /**Main method*/
  public static void  main(String[] args) {
    try {
      UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    }
    catch(Exception e) {
      e.printStackTrace();
    }
    new MApplication();
  }
}
--------------------------------------------------
2、
package mypjjv;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import com.borland.jbcl.layout.*;
import com.sun.java.swing.*;
import com.sun.java.swing.plaf.*;
import javax.swing.JComponent.*;
import javax.swing.border.*;


public class Frame1 extends JFrame {
  JPanel contentPane;
  XYLayout xYLayout1 = new XYLayout();
    JButton jButton2 = new JButton();
    JTextField jTextField3 = new JTextField();
    JTextField jTextField2 = new JTextField();
    JTextField jTextField1 = new JTextField();
    JLabel jLabel4 = new JLabel();
    JLabel jLabel3 = new JLabel();
    JLabel jLabel2 = new JLabel();
    JLabel jLabel1 = new JLabel();
    JButton jButton1 = new JButton();
    JLabel jLabel5 = new JLabel();
    Border border1;
    JTextField jTextField4 = new JTextField();
    JLabel jLabel6 = new JLabel();
    JTextField jTextField5 = new JTextField();
    JFileChooser jFileChooser1 = new JFileChooser();

  /**Construct the frame*/
  public Frame1() {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  /**Component initialization*/
  private void jbInit() throws Exception  {
    //setIconImage(Toolkit.getDefaultToolkit().createImage(Frame1.class.getResource("[Your Icon]")));
    contentPane = (JPanel) this.getContentPane();
    border1 = new EtchedBorder(EtchedBorder.RAISED,Color.white,new Color(178, 178, 178));
        contentPane.setLayout(xYLayout1);
    this.setSize(new Dimension(640,480));
    this.setTitle("Frame Title");
        jButton2.setText("ShowDialog");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(ActionEvent e) {
                jButton2_actionPerformed(e);
            }
        });
        jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(MouseEvent e) {
                jButton2_mouseClicked(e);
            }
        });
        jTextField3.setText("jTextField3");
        jTextField2.setText("jTextField2");
        jTextField1.setText("jTextField1");
        jLabel4.setFont(new java.awt.Font("SansSerif", 1, 16));
        jLabel4.setToolTipText("");
        jLabel4.setText("What  You Inputed  Information");
        jLabel3.setText("Address:");
        jLabel2.setText("AGE:");
        jLabel1.setText("Name:");
        jButton1.setText("ShowFileDialog");
        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(MouseEvent e) {
                jButton1_mouseClicked(e);
            }
        });
        jLabel5.setText("You Select File is :");
        jTextField4.setText("jTextField4");
        jLabel6.setText("EMail:");
        jTextField5.setText("jTextField5");
        contentPane.add(jLabel4,   new XYConstraints(185, 41, 277, -1));
        contentPane.add(jButton2, new XYConstraints(139, 305, 121, -1));
        contentPane.add(jButton1,    new XYConstraints(358, 302, 137, -1));
        contentPane.add(jTextField3, new XYConstraints(370, 120, 139, -1));
        contentPane.add(jLabel3, new XYConstraints(313, 123, -1, -1));
        contentPane.add(jLabel5, new XYConstraints(40, 219, -1, -1));
        contentPane.add(jLabel1, new XYConstraints(98, 125, 42, -1));
        contentPane.add(jTextField4,  new XYConstraints(143, 218, 370, -1));
        contentPane.add(jTextField1, new XYConstraints(143, 119, 133, -1));
        contentPane.add(jLabel2,  new XYConstraints(113, 176, -1, -1));
        contentPane.add(jTextField2, new XYConstraints(143, 170, 133, -1));
        contentPane.add(jLabel6,    new XYConstraints(326, 170, -1, -1));
        contentPane.add(jTextField5,    new XYConstraints(370, 168, 140, -1));
  }
  /**Overridden so we can exit when window is closed*/
  protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING) {
      System.exit(0);
    }
  }

  void jButton1_mouseClicked(MouseEvent e) {
    //jTextField1.setText("ButtonOne");
        /*FileDialog FDialog=new FileDialog(this,"Select File",true);

        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension dialogSize = FDialog.getSize();
        if (dialogSize.height > screenSize.height) {
            dialogSize.height = screenSize.height;
        }
        if (dialogSize.width > screenSize.width) {
            dialogSize.width = screenSize.width;
        }
        FDialog.setLocation((screenSize.width - dialogSize.width) / 2, (screenSize.height - dialogSize.height) / 2);
        FDialog.show();*/
        if (JFileChooser.APPROVE_OPTION == jFileChooser1.showOpenDialog(this))
        {
            jTextField4.setText(jFileChooser1.getSelectedFile().getName());
        }

  }

    void jButton2_mouseClicked(MouseEvent e) {
        //int selection=JOptionPane.showConfirmDialog(this,"Message","Title",JOptionPane.OK_CANCEL_OPTION,
        //JOptionPane.WARNING_MESSAGE);
        //JOptionPane.showMessageDialog(this,"This is My First Message Showing!","Title",JOptionPane.ERROR_MESSAGE);
        MyDialog dialog=new MyDialog(this,"",true);
        dialog.setSize(480,350);

        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension dialogSize = dialog.getSize();
        if (dialogSize.height > screenSize.height) {
            dialogSize.height = screenSize.height;
        }
        if (dialogSize.width > screenSize.width) {
            dialogSize.width = screenSize.width;
        }
        dialog.setLocation((screenSize.width - dialogSize.width) / 2, (screenSize.height - dialogSize.height) / 2);

        //dialog.show();
        ConnectInfo Transfer=new ConnectInfo("Ruanwq","22","Mexin Company","rwq_yky@163.net");
        if (dialog.ShowDialog(Transfer)==true)
        {
            jTextField1.setText(Transfer.name);
            jTextField2.setText(Transfer.age);
            jTextField3.setText(Transfer.address);
            jTextField5.setText(Transfer.email);

        }

    }

    void jButton2_actionPerformed(ActionEvent e) {
    }
}
----------------------------------------------------------
3、
package mypjjv;

import java.awt.*;
import javax.swing.*;
import com.borland.jbcl.layout.*;
import java.awt.event.*;

/**
 * Title:
 * Description:
 * Copyright:    Copyright (c) 2001
 * Company:
 * @author
 * @version 1.0
 */

public class MyDialog extends JDialog {
    JPanel panel1 = new JPanel();
    JLabel jLabel1 = new JLabel();
    XYLayout xYLayout1 = new XYLayout();
    JTextField jTextField1 = new JTextField();
    JLabel jLabel2 = new JLabel();
    JTextField jTextField2 = new JTextField();
    JLabel jLabel3 = new JLabel();
    JTextField jTextField3 = new JTextField();
    JLabel jLabel4 = new JLabel();
    JPanel jPanel1 = new JPanel();
    JButton jButton1 = new JButton();
    JButton jButton2 = new JButton();

    private boolean  OK;
    JPanel jPanel2 = new JPanel();
    JLabel jLabel5 = new JLabel();
    JTextField jTextField4 = new JTextField();

    public MyDialog(Frame frame, String title, boolean modal) {
        super(frame, title, modal);
        try {
            jbInit();
            pack();
        }
        catch(Exception ex) {
            ex.printStackTrace();
        }
    }

    public MyDialog() {
        this(null, "", false);
    }
    void jbInit() throws Exception {

        panel1.setLayout(xYLayout1);
        jLabel1.setText("Name:");
        jTextField1.setText("jTextField1");
        jLabel2.setText("AGE:");
        jTextField2.setText("jTextField2");
        jLabel3.setText("Address:");
        jTextField3.setText("jTextField3");
        jLabel4.setFont(new java.awt.Font("SansSerif", 1, 16));
        jLabel4.setToolTipText("");
        jLabel4.setText("Please Inpute Your Information");
        this.setModal(true);
        this.setTitle("");
        jButton1.setText("OK");
        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(MouseEvent e) {
                jButton1_mouseClicked(e);
            }
        });
        jButton2.setText("Cancel");
        jLabel5.setText("EMail:");
        jTextField4.setText("jTextField4");
        getContentPane().add(panel1);
        panel1.add(jLabel4,    new XYConstraints(100, 17, -1, -1));
        panel1.add(jButton2,  new XYConstraints(254, 232, 89, -1));
        panel1.add(jButton1, new XYConstraints(122, 232, 77, -1));
        panel1.add(jTextField1,  new XYConstraints(176, 61, 133, -1));
        panel1.add(jTextField3,  new XYConstraints(179, 146, 132, -1));
        panel1.add(jLabel3, new XYConstraints(122, 149, -1, -1));
        panel1.add(jLabel1, new XYConstraints(126, 66, 42, -1));
        panel1.add(jLabel2, new XYConstraints(141, 110, -1, -1));
        panel1.add(jTextField2, new XYConstraints(176, 105, 133, -1));
        panel1.add(jLabel5,     new XYConstraints(139, 189, -1, -1));
        panel1.add(jTextField4, new XYConstraints(180, 186, 132, -1));
        this.getContentPane().add(jPanel1, BorderLayout.SOUTH);
        this.getContentPane().add(jPanel2, BorderLayout.EAST);
    }

    void jButton1_mouseClicked(MouseEvent e) {
        //System.exit(0);
        OK=true;
        setVisible(false);
    }
    public boolean  ShowDialog(ConnectInfo Transfer)
    {
        jTextField1.setText(Transfer.name);
        jTextField2.setText(Transfer.age);
        jTextField3.setText(Transfer.address);
        jTextField4.setText(Transfer.email);
        show();
        if(OK)
        {
            Transfer.name=jTextField1.getText();
            Transfer.age=jTextField2.getText();
            Transfer.address=jTextField3.getText();
            Transfer.email=jTextField4.getText();
        }
        return  OK;
    }
}
-------------------------------------------------------------
4、
package mypjjv;

/**
 * Title:
 * Description:
 * Copyright:    Copyright (c) 2001
 * Company:
 * @author
 * @version 1.0
 */

public class ConnectInfo {
    public  String name;
    public  String age;
    public  String address;
    public  String email;
    public ConnectInfo(String n,String a,String ad,String e) {
            name=n;
            age=a;
            address=ad;
            email=e;
    }
}
-----------------------------------------------------
OK,我是在JB5下写的!


|
String s = JOptionPane.showInputDialog(this, "Enter something", "Title", JOptionPane.QUESTION_MESSAGE);

|
fatpig521(瘦驼)说得对,你写的Frame的初始大小没有设。
在Frmae的显示前,设定一下大小(setSize,或setBounds,JFrame还可以设setPerformedSize???方法名记不清了)

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 高分求助高分求助高分求助高分求助高分求助高分求助
  • 谁参加过weblogic的证书考试,是否有经验可供参考?高分高分高高分
  • 哪里有JB6下载啊,高分相送,救命
  • 高分求救!我在uclinux上运行应用程序时出现内存分配错误,不知如何解决,解决者高分!!
  • 哪里去找中文的EJB文章?高分悬赏!
  • 有jsp的upload和download 代码么,高分相报!
  • (高分求助)请问,那里有软件开发的<设计文档>
  • 高分寻求jsp代码(网上调查系统,新闻发布系统)就这点分了
  • 高分求购做饼图、线形图的源吗?
  • 关于linu下的中文输入.(高分:300)
  • 一个简单的问题,高分求助!!!
  • 高分求购jbulider6得注册码,企业版本,个人版本都要
  • Linux远程访问的问题,高分求教:)
  • 请问哪儿有Solaris8的光盘映像文件下载???高分相赠!!!
  • 高分求“Ration Rose”&"JBuilder6.0"&"VisualCafe"
  • VJ的一个问题,高分求助,熟悉VJ得请进!
  • 高分求购:linux和unix命令大全电子文档
  • 急救:关于BLOB数据类型---在线等待,高分相送!
  • 求UNIXWARE7.11的原版下载,高分相赠,在线等待!!!
  • 关于java?高分相送!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    java开发知识 iis7站长之家