swing之JDialog

package canying;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import java.io.File;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.imageio.ImageIO;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JPopupMenu;
import javax.swing.JTextField;

import shujuku.basedao;

public class denglu extends JDialog implements ActionListener,KeyListener{

    JLabel jl1,jl2,jl3;
    JTextField jt;
    JPasswordField jpf;
    JButton jb1,jb2;
    public static void main(String[] args)//这个主函数不需要,只是为了调试用
      {

        denglu dg=new denglu();

      }

    public denglu()
        {
        jl1=new JLabel("用户名");
        jl1.setBounds(60, 190, 150, 30);//设置改标签的位置
        this.add(jl1);
        jl2=new JLabel("(或员工编号)");
        jl2.setForeground(Color.red);//设置此对象的前景色
        jl2.setBounds(100, 210, 100, 30);
        this.add(jl2);
        jl3=new JLabel("密码");
        jl3.setBounds(60, 240, 150, 30);
        this.add(jl3);

        jt=new JTextField(20);
        jt.setFocusable(true);
        jt.setBounds(180, 190, 120, 30);//设置位置
        this.add(jt);
        jt.setBorder(BorderFactory.createLoweredBevelBorder());//设置边框凹下去的效果

        jpf=new JPasswordField();
        jpf.setFocusable(true);
        jpf.setBounds(180, 240, 120, 30);
        jpf.addKeyListener(this);
        this.add(jpf);
        jpf.setBorder(BorderFactory.createLoweredBevelBorder());

        jb1=new JButton("确定");
        jb1.setBounds(105, 300, 75, 30);
        jb1.setForeground(Color.blue);
        jb1.addActionListener(this);
        final String id=jb1.getText();
        JPopupMenu pop=new JPopupMenu(id);
        JMenuItem it1=new JMenuItem ("功能1");
        it1.addMouseListener(new MouseListener()
         {
            @Override
            public void mouseReleased(MouseEvent e)
         {
             System.out.println(" 右键功能");
         }

            @Override
            public void mouseClicked(MouseEvent arg0) {
                // TODO Auto-generated method stub

            }

            @Override
            public void mouseEntered(MouseEvent arg0) {
                // TODO Auto-generated method stub

            }

            @Override
            public void mouseExited(MouseEvent arg0) {
                // TODO Auto-generated method stub

            }

            @Override
            public void mousePressed(MouseEvent arg0) {
                // TODO Auto-generated method stub

            }

         });
        this.add(jb1);        

        jb2=new JButton("取消");
        jb2.setBounds(215, 300, 75, 30);
        jb2.setForeground(Color.blue);
        jb2.addActionListener(this);
        this.add(jb2);    

        this.setLayout(null);//空布局是为了各组件在指定的位置显示
        backimage bi=new backimage();
        bi.setBounds(0, 0, 360, 360);
        this.add(bi);
        this.setUndecorated(true);//去掉JFrame的边框
        this.setSize(360,360);
        int width=getToolkit().getDefaultToolkit().getScreenSize().width;
        int height=getToolkit().getDefaultToolkit().getScreenSize().height;
        this.setLocation(width/2-200, height/2-200);
        this.setVisible(true);
        }

    @Override
    public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
        if(e.getSource()==jb1)
         {
            String usr=this.jt.getText().trim();
            String ps=new String(this.jpf.getPassword());
            String sql="select zhiwei from renyuan a,zheze b where a.pK_id=b.pk_id and a.name=? and a.passwd=?";
            Object [] ob={usr,ps};
            basedao db=new basedao();
            ResultSet rs;
            rs=db.execute(sql, ob, 0);
            try {
                if(rs.next())
                 {
                    String zhiwei=rs.getString(1);
                    if(zhiwei.equals("manager"))
                     {

                        this.dispose();
                        new caozuo();
                     }
                    else
                      {
                        JOptionPane.showMessageDialog(this, "很抱歉 你没有权限 请联系管理员");
                      }
                 }
                else
                {
                    JOptionPane.showMessageDialog(this, "用户名或密码错误!");
                }
            } catch (SQLException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }

         }

        if(e.getSource()==jb2)
         {
            this.dispose();

         }

    }

    @Override
    public void keyPressed(KeyEvent arg0) {
        // TODO Auto-generated method stub
        if(arg0.getKeyCode()==KeyEvent.VK_ENTER)
         {

            String usr=this.jt.getText().trim();
            String ps=new String(this.jpf.getPassword());
            String sql="select zhiwei from renyuan a,zheze b where a.pK_id=b.pk_id and a.name=? and a.passwd=?";
            Object [] ob={usr,ps};
            basedao db=new basedao();
            ResultSet rs;
            rs=db.execute(sql, ob, 0);
            try {
                if(rs.next())
                 {
                    String zhiwei=rs.getString(1);
                    if(zhiwei.equals("manager"))
                     {

                        this.dispose();
                        new caozuo();
                     }
                    else
                      {
                        JOptionPane.showMessageDialog(this, "很抱歉 你没有权限 请联系管理员");
                      }
                 }
                else
                {
                    JOptionPane.showMessageDialog(this, "用户名或密码错误!");
                }
            } catch (SQLException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }

         }
    }

    @Override
    public void keyReleased(KeyEvent arg0) {
        // TODO Auto-generated method stub

    }

    @Override
    public void keyTyped(KeyEvent arg0) {
        // TODO Auto-generated method stub

    }
}

class backimage extends JPanel
   {
    Image im;
    public backimage()
     {
        try{
            im=ImageIO.read(new File("image/0304_5.jpg"));

        }catch(Exception e){e.printStackTrace();}

     }

    public void paint(Graphics g)

    {
        g.drawImage(im, 0, 0, 360, 360, this);

    }
   }

时间: 2024-10-10 22:42:09

swing之JDialog的相关文章

JAVA学习中Swing部分JDialog对话框窗体的简单学习

package com.swing; import java.awt.Color;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener; import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JFrame;import javax.swing.JLabel;impor

swing自定义JDialog弹出框

第一次搞swing,自定义JDialog的例子较少,写下来备忘 ,对JDialog中的文本框进行了验证 package com.chauvet; import java.awt.Component;import java.awt.Dimension;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyEvent

第13章 Swing程序组件 JDialog

JDialog窗体是Swing组件中的对话框 JDialog窗体的功能是从一个窗体中弹出另一个窗体,就像是在使用IE浏览器时弹出的确定对话框一样. 在应用程序中创建JDialog窗体需要实例化JDialog类,通常使用以下几个JDialog类的构造方法 public JDialog(): 创建一个没有标题和父窗体的对话框. public JDialog(Frame f): 创建一个指定父窗体的对话框,但该窗体没有标题. public JDialog(Frame f, boolean model)

Swing

Swing嘛哎呀还是很不是很复杂哈,我感觉就是new + add.有点像什么呢...感觉剪切画,就是创建然后粘贴在创建在粘贴最后就是呈现出你粘贴出来的样子.额,反正好不好看就看个人的艺术天分了. Swing个人感觉最重要的就是Layout了,这个东西真的还是手写代码才能体现出功能的牛逼性,用插件拖不出来效果.而且...而且...还拖不来.我真的是智商捉急.Layout这个东西太复杂了,以后慢慢用到再说把.Swing里面的还有很多组件,这些组件都是不同的类,当然这些类都是以大写的J开头的类,比如什

swing实现代码助手功能

实现思路: 定义了个快捷键ctrl+/ ,当按此键时,会出现一个弹出窗口,采用JWINDOW来实现. 选择代码段便用了JList来实现. 下面直接上代码. package org.swan.mybatis.ui.common; import java.awt.Color; import java.awt.Component; import java.awt.Point; import java.awt.Window; import java.awt.event.*; import java.ut

Swing写qq聊天软件(想要QQ表情@我呦)

//主要实现页面等功能的实现 package com.zou.chat;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.Font;import java.awt.Frame;import java.awt.Point;import java.awt.event.ComponentAdapter;import

JFrame、JDialog close

package common; import javax.swing.JFrame; import javax.swing.SwingUtilities; /*2015-5-26*/ public class SwingConsole { public static void run(final JFrame frame,final int width,final int height){ SwingUtilities.invokeLater(new Runnable() { @Override

Swing框架的继承关系

---------------siwuxie095 Java SE 8 (截止 2017/4/1 最新)在线 API 文档: http://docs.oracle.com/javase/8/docs/api/ Swing 框架是在 javax 包下,即 javax.swing 找到 javax.swing,点击进入,里面就是 Swing 框架的全部内容 从 JButton 入手,看看其继承关系: 显然,JComponent 是 Swing 框架最基本的组件 点击进入 javax.swing.JC

Java基础:多功能小窗口,swing,io,net综合应用

概念原理的理解,不代表能熟练应用. 如果将多个知识点关联并应用起来,这能加快我们对知识的掌握. 作为一个初学者,最快速的上手方式应该就是学以致用了. 下面做了一个小窗口,主要是为了综合应用java的一些基础功能,界面稍显随意. 界面: 具体功能以及代码: 1 /*具体实现功能: 2 * 1.根据地址栏的路径打开文本文件,显示在文本区域. 3 * 2.根据地址栏的网址获取网页源代码,显示在文本区域. 4 * 3.通过打开按钮打开本地文本文件,显示在文本区域. 5 * 4.通过保存按钮,把文本区域内