JAVA用JTextField 和 JPasswordField 编写登录界面 每个用户有三次...
import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListenerimport javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;/** * 登录界面 */public class Login { private JFrame frame; private JLabel label1; private JLabel label2; private JLabel label3; private JPasswordField jf; private JTextField jt; private JButton yes; private JButton no; private int i=0; public Login(){ frame=new JFrame("登陆"); label1=new JLabel("家具销售系统"); label2=new JLabel(" 用户名:"); label3=new JLabel("密 码:"); jf=new JPasswordField(15); jt=new JTextField(15); yes=new JButton("登录"); no=new JButton("取消"); init(); addEventHandler(); } public void init(){ JPanel north=new JPanel(); JPanel center=new JPanel(); JPanel south=new JPanel(); north.setLayout(new FlowLayout()); center.setLayout(new FlowLayout(2)); south.setLayout(new FlowLayout()); north.add(label1); center.add(label2); center.add(jt); center.add(label3); center.add(jf); south.add(yes); south.add(no); frame.setLayout(new BorderLayout()); frame.add(north,BorderLayout.NORTH); frame.add(center,BorderLayout.CENTER); frame.add(south,BorderLayout.SOUTH); } public void showMe(){ frame.setLocation(500, 300); frame.setSize(250,150); frame.setResizable(false);//不能拖动大小 frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void addEventHandler(){ yes.addActionListener(new ActionListener(){ @SuppressWarnings("deprecation") public void actionPerformed(ActionEvent e) { if(jt.getText().equals("abc")&jf.getText().equals("123")){ JOptionPane.showMessageDialog(null, "登陆成功"); }else{ if(i==2){ System.exit(0); }else{ i++; JOptionPane.showMessageDialog(null, "登陆失败,你还有"+(3-i)+"次机会"); } } } }); no.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { System.exit(0); } }); }public static void main(String[] args){ new Login().showMe(); }}注:1)用户名:abc 密码:123 2) 错误3次退出程序
java输入学号,姓名,性别,密码,然后窗体设计现实信息在文本区,...
public class Person {private String sno;private String sname;private Integer age;public String getSno() {return sno;}public void setSno(String sno) {this.sno = sno;}public String getSname() {return sname;}public void setSname(String sname) {this.sname = sname;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public Person(String sno, String sname, Integer age) {super();this.sno = sno;this.sname = sname;this.age = age;}}
用java写一个登陆界面代码。
展开全部 import java.awt.Dimension;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPasswordField;import javax.swing.JTextField;public class Test26 { public static void main(String[] args) { final String userName = "abc"; final String passwrod = "123"; JFrame jFrame = new JFrame("登陆界面"); Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); jFrame.setBounds(((int)dimension.getWidth() - 200) / 2, ((int)dimension.getHeight() - 300) / 2, 200, 150); jFrame.setResizable(false); jFrame.setLayout(null); jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JLabel label1 = new JLabel("姓名"); label1.setBounds(10, 10, 100, 30); jFrame.add(label1); JLabel label2 = new JLabel("密码"); label2.setBounds(10, 40, 100, 30); jFrame.add(label2); final JTextField text1 = new JTextField(); text1.setBounds(50, 15, 130, 20); jFrame.add(text1); final JPasswordField text2 = new JPasswordField(); text2.setBounds(50, 45, 130, 20); jFrame.add(text2); JButton button = new JButton("Login"); button.setBounds(10, 75, 170, 40); button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if(userName.equals(text1.getText()) && passwrod.equals(text2.getText())) { JOptionPane.showMessageDialog(null, "登陆成功误", "提示", JOptionPane.INFORMATION_MESSAGE); } else { JOptionPane.showMessageDialog(null, "错误", "提示", JOptionPane.ERROR_MESSAGE); text1.setText(""); text2.setText(""); } } }); jFrame.add(button); jFrame.setVisible(true); }}
高手进,jdbc连接数据库验证用户名密码程序,帮看下是什么意思?
我按照问题的顺序一一给你解答一下吧,这些东西都是基本的组件或者用法,建议你多看看jdk文档1、这句是什么意思?。
setBounds(new Rectangle(24, 47, 117, 22));中.setbounds是方法是什么意思?里面new rectangle方法是什么意思?这句setbounds()方法是设置lblname的位置和大小,里面的new Rectangle(24, 47, 117, 22)指定坐标空间中的一个区域,其中24,47是lblname的左上角的坐标,117,22是宽度和高度;2、getContentPane().add(lblname)是什么意思?getcontentpane()是什么意思?这句getContentPane()是获取当前jframe的容器对象,add(lblname)是把lblname添加到这个容器对象中去。
3、//下面这三句是什么意思?this.setTitle("登陆"); // 设置当前窗体的标题为“登陆”this.setSize(400, 300); // 设置当前窗体的显示大小this.setVisible(true);} // 显示窗体4、JLabel lblname = new JLabel();//jlabel类是做什么用的啊?JLabel是一个显示标签类,主要是用来显示文本或图像显示区域。
5、JButton jButton1 = new JButton();//jbtuon类是什么意思?JButton类是按钮类,用来创建一个可点击的按钮6、JPasswordField txtPwd = new JPasswordField(); //JPasswordField是什么意思JPasswordField是文本输入框,用来输入密码等,在输入的时候不显示原始输入字符,显示星号7、JOptionPane.showMessageDialog(this, "密码不能为空!", "登陆",JOptionPane.ERROR_MESSAGE);//JOptionPane是什么意思?JOptionPane是用来创建对话框的组件,这句就创建一个消息提示框,提示框标题是“登陆”,内容显示的是“密码不能为空!”,JOptionPane.ERROR_MESSAGE说明这个提示框的类型用来提示错误消息。
8、//ActionEvent 是什么类型public void jButton2_actionPerformed(ActionEvent e) {ActionEvent是一个动作事件,比如点击事件
在myeclipse中OK.addActionListener(new ActionListener()总显示错...
展开全部 package demo;import java.awt.BorderLayout;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.event.*;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;@SuppressWarnings("serial")public class GetPas extends JFrame implements ActionListener{JPasswordField input;JButton button2;JButton button1;JLabel write;JLabel print;JTextField output; public static void main(String args[]) { GetPas g = new GetPas(); g.init(g);}public void init(JFrame f){JFrame f1 = new JFrame("获取密码");f1.setLocation(400,180);f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f1.pack();f1.setSize(300, 190);f1.setVisible(true);f1.setLayout(null);f1.getContentPane().setLayout(new BorderLayout());button1 = new JButton("抓取");button2 = new JButton("关闭");input = new JPasswordField(10);output = new JTextField(null,10);output.setEditable(false);write = new JLabel("请输入:");print = new JLabel("抓取密码:");JPanel s1 = new JPanel();JPanel s2 = new JPanel();JPanel s3 = new JPanel();FlowLayout flow=new FlowLayout();f1.setLayout(new FlowLayout(10,60,5));s1.setLayout(flow);s2.setLayout(flow);s3.setLayout(flow);s1.add(write);s1.add(input);s2.add(print);s2.add(output);s3.add(button1);s3.add(button2);f1.setMinimumSize(new Dimension(300,190));f1.getContentPane().add("North",s1);f1.getContentPane().add("Center",s2);f1.getContentPane().add("South",s3);button2.addActionListener(this);button1.addActionListener(this);}@SuppressWarnings("deprecation")public void actionPerformed(ActionEvent a) { if(a.getSource()==button1) { output.setText(input.getText()); } if(a.getSource()==button2) { System.exit(0); } }}以前写过一个类似的 看看行不行
JAVA窗体添加背景图片
import javax.swing.*;import java.awt.event.*;import java.awt.*;import java.sql.*;public class DengLu extends JFrame { public JLabel name = new JLabel("用户名"); public JLabel pass = new JLabel("密 码"); public JTextField userName = new JTextField(); public JPasswordField passWord = new JPasswordField(); public Button bok = new Button("登陆"); public Button bexit = new Button("取消"); public DengLu() { this.setContentPane(new MyPanel()); setTitle("欢迎使用学生成绩管理系统"); setLayout(null); setSize(500, 400); setResizable(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Dimension scr = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frm = this.getSize(); setLocation( (scr.width - frm.width) / 2, (scr.height - frm.height) / 2 - 18); name.setBounds(70, 260, 120, 20); userName.setBounds(120, 260, 120, 27); pass.setBounds(70, 300, 120, 20); passWord.setBounds(120, 300, 120, 27); passWord.setEchoChar('*'); bok.setBounds(340, 260, 100, 28); bexit.setBounds(340, 300, 100, 28); add(name); add(userName); add(pass); add(passWord); add(bok); add(bexit); setVisible(true); bexit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {//dispose(); System.exit(0); } }); bok.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (userName.getText().equals("")) { JOptionPane.showMessageDialog(null, "用户名不能为空!"); } else if (passWord.getText().equals("")) { JOptionPane.showMessageDialog(null, "密码不能为空!"); } else { if (userName.getText().equals("admin") && passWord.getText().equals("admin")) { dispose();// new MainFrame(); } else { JOptionPane.showMessageDialog(null, "密码错误"); userName.setText(null); passWord.setText(null); } } } }); } public static void main(String args[]) { new DengLu(); } private class MyPanel extends JPanel { public void paintComponent(Graphics g) { Graphics2D g2 = (Graphics2D)g; super.paintComponent(g); Image img = Toolkit.getDefaultToolkit().getImage("zsjm.jpg"); g2.drawImage(img, 0, 0, this.getWidth(), this.getHeight(), this); } }}
java socket 编程 登录
给你一个聊天室的,这个是客户端之间的通信,服务器负责接收和转发,你所要的服务器与客户端对发,只要给服务器写个界面显示和输入就行,所有代码如下:你测试的时候应该把所有代码放在同一个工程下,因为客户端可服务器共用同一个POJO,里面有些包的错误,删除掉就行了 服务器代码,即服务器入口程序:import java.io.BufferedReader; import java.io.File; import java.io.IOException; import java.io.InputStreamReader; import java.io.ObjectOutputStream; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.Date; import java.util.HashSet; public class ChatRoomServer { private ServerSocket ss; private HashSet allSockets; private UserDao dao; public ChatRoomServer(){ try { ss=new ServerSocket(9999); allSockets=new HashSet(); dao=new UserDaoForTextFile(new File("d:/stu/user.txt")); } catch (IOException e) { e.printStackTrace(); } } public void startService() throws IOException{ while(true){ Socket s=ss.accept(); allSockets.add(s); new ChatRoomServerThread(s).start(); } } class ChatRoomServerThread extends Thread{ private Socket s; public ChatRoomServerThread(Socket s){ this.s=s; } public void run(){ //1,得到Socket的输入流,并包装。
//2,循环从输入流中读取一行数据。
//3,每读到一行数据,判断该行是否是退出命令? //4,如果是退出命令,则将当前socket从集合中删除,关闭当前socket,并跳出循环 //5,如果不是退出命令,则将该消model.getCurrentUser().getName()息转发给所有在线的客户端。
// 循环遍历allSockets集合,得到每一个socket的输出流,向流中写出该消息。
BufferedReader br=null; String str = null; try { br = new BufferedReader(new InputStreamReader(s .getInputStream())); while((str=br.readLine())!=null ){ if(str.indexOf("%EXIT%")==0){ allSockets.remove(s); //向其他客户端发送XXX退出的消息 sendMessageToAllClient(str.split(":")[1]+"离开聊天室!"); s.close(); break; }else if(str.indexOf("%LOGIN%")==0){ String userName=str.split(":")[1]; String password=str.split(":")[2]; User user=dao.getUser(userName, password); ObjectOutputStream oos=new ObjectOutputStream(s.getOutputStream()); oos.writeObject(user); oos.flush(); if(user!=null){ sendMessageToAllClient(user.getName()+"进入聊天室!"); } str = null; } if(str!=null){ sendMessageToAllClient(str); } } } catch (Exception e) { e.printStackTrace(); } } public void sendMessageToAllClient(String message)throws IOException{ Date date=new Date(); System.out.println(s.getInetAddress()+":"+message+"\t["+date+"]"); for(Socket temps:allSockets){ PrintWriter pw=new PrintWriter(temps.getOutputStream()); pw.println(message+"\t["+date+"]"); pw.flush(); } } } public static void main(String[] args) { try { new ChatRoomServer().startService(); } catch (IOException e) { e.printStackTrace(); } } } 客户端代码:总共4个:1:入口程序: public class ChatRoomClient { private ClientModel model; public ChatRoomClient(){// String hostName = JOptionPane.showInputDialog(null,// "请输入服务器主机名:");// String portName = JOptionPane// .showInputDialog(null, "请输入端口号:"); //固定服务端IP和端口 model=new ClientModel("127.0.0.1",Integer.parseInt("9999")); model.createSocket(); new LoginFrame(model).showMe(); } public static void main(String[] args) { new ChatRoomClient(); } }2:登陆后显示界面:import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.BufferedReader; import java.io.IOException; import java.io.PrintWriter; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.JTextField; public class ClientMainFrame extends JFrame{ private JTextArea area; private JTextField field; private JLabel label; private JButton button; private ClientModel model; public ClientMainFrame(){ super("聊天室客户端v1.0"); area=new JTextArea(20,40); field=new JTextField(25); button=new JButton("发送"); label=new JLabel(); JScrollPane jsp=new JScrollPane(area); this.add(jsp,BorderLayout.CENTER); JPanel panel=new JPanel(); panel.add(label); panel.add(field); panel.add(button); this.add(panel,BorderLayout.SOUTH); addEventHandler(); } public ClientMainFrame(ClientModel model){ this(); this.model=model; label.setText(model.getCurrentUser().getName()); } public void addEventHandler(){ ActionListener lis=new SendEventListener(); button....
java问题1,编写一个登录界面,界面包含有户名,密码,登录按钮和...
参考代码import javax.swing.*;import java.awt.*;import java.awt.event.*;//jdk 1.8 进行测试通过public class LoginFrame extends JFrame implements ActionListener{ JTextField jtf1; JPasswordField jpf2; public LoginFrame() { //组件部分 JPanel jp1,jp2,jp3; JLabel jl1,jl2; JButton jb1,jb2; jp1 = new JPanel(); jl1 = new JLabel("用户名"); jtf1 = new JTextField(10); jp1.add(jl1); jp1.add(jtf1); jp2 = new JPanel(); jl2 = new JLabel("密 码"); jpf2 = new JPasswordField(10); jp2.add(jl2); jp2.add(jpf2); jp3 = new JPanel(); jb1 = new JButton("登录"); jb2 = new JButton("退出"); jb1.setActionCommand("login"); jb1.addActionListener(this); jb2.setActionCommand("exit"); jb2.addActionListener(this); jp3.add(jb1); jp3.add(jb2); add(jp1);add(jp2);add(jp3); //设置窗口属性部分 setLayout(new GridLayout(3, 1)); setTitle("登录ing..."); setSize(321,169);//大小 setLocationRelativeTo(null);//居中 setDefaultCloseOperation(EXIT_ON_CLOSE); setVisible(true); } public static void main(String[] args) { new LoginFrame(); } @Override public void actionPerformed(ActionEvent e) { String cmd = e.getActionCommand();//根据设置的ActionCommand来判断是哪一个按钮点击了 if(cmd.equals("exit")){ System.exit(0); }else if(cmd.equals("login")){ System.out.println("提示 用户名 admin 密码123"); String name = jtf1.getText().trim(); String key = new String(jpf2.getPassword()).trim(); if(name.equals("admin")&&key.equals("123")){ new MyJFrame(name); this.setVisible(false); this.dispose(); }else{ JOptionPane.showMessageDialog(this,"提示:用户名admin 密码123"); } } }}class MyJFrame extends JFrame{ String name; public MyJFrame(String name) { this.name = name; JLabel jl = new JLabel("登录成功!欢迎"+name+"回来"); add(jl); setTitle(".新窗口."); setSize(300, 300); setLocationRelativeTo(null); setDefaultCloseOperation(EXIT_ON_CLOSE); setVisible(true); }}测试
java GUI
你的问题全有三处,1:监听那样用好像不行,最好弄个内部类 2:你的那个nameinput,passwordinput定义了两次 (JTextField nameinput,passwordinput; final JTextField nameinput=new JTextField(15); final JTextField passwordinput=new JTextField(15); ) 3:e.getSource()这个方法具体的我也不太懂不过你用 System.out.println(e.getSource());打印出来肯定 不是OK 对象我把它了加了一个(String st = e.getActionCommand(); if (st.equals("登录")){})这样就可以了我改的原码是:import javax.swing.*;import java.awt.*;import java.awt.event.*;public class HelloWorld extends JPanel { static final int WIDTH = 300; static final int HEIGHT = 150; JFrame mainJFrame; JTextField nameinput, passwordinput; JButton ok, cancel; public void add(Component c, GridBagConstraints constraints, int x, int y, int w, int h) { constraints.gridx = x; constraints.gridy = y; constraints.gridwidth = w; constraints.gridheight = h; add(c, constraints); } public HelloWorld() { mainJFrame = new JFrame(); mainJFrame.setTitle("欢迎进入java世界"); setLayout(new GridBagLayout()); mainJFrame.add(this, BorderLayout.WEST); mainJFrame.setSize(WIDTH, HEIGHT); Toolkit kit = Toolkit.getDefaultToolkit(); Dimension screenSize = kit.getScreenSize(); int width = screenSize.width; int height = screenSize.height; int x = (width - WIDTH) / 2; int y = (height - HEIGHT) / 2; mainJFrame.setLocation(x, y); // final JPasswordField passwordinput=new JPasswordField(15); nameinput = new JTextField(15); passwordinput = new JTextField(15); JButton ok = new JButton("登录"); // ok.setActionCommand("pp"); SS s = new SS(); ok.addActionListener(s); JButton cancel = new JButton("取消"); cancel.addActionListener(s); JLabel title = new JLabel("欢迎进入java世界"); JLabel name = new JLabel("用户名"); JLabel password = new JLabel("密 码"); GridBagConstraints constraints = new GridBagConstraints(); constraints.fill = GridBagConstraints.NONE; constraints.anchor = GridBagConstraints.EAST; constraints.weightx = 3; constraints.weighty = 4; add(title, constraints, 0, 0, 4, 1); add(name, constraints, 0, 1, 1, 1); add(password, constraints, 0, 2, 1, 1); add(nameinput, constraints, 2, 1, 1, 1); add(passwordinput, constraints, 2, 2, 1, 1); add(ok, constraints, 1, 3, 1, 1); add(cancel, constraints, 2, 3, 1, 1); mainJFrame.setVisible(true); mainJFrame.setResizable(false); mainJFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { new HelloWorld(); } class SS implements ActionListener { public void actionPerformed(ActionEvent e) { String st = e.getActionCommand(); System.out.println(st); System.out.println(e.getSource()); if (st.equals("登录")) { String nametext = nameinput.getText(); String passwordtext = passwordinput.getText(); String str = new String(passwordtext); boolean x = (nametext.equals("ligang")); boolean y = (str.equals("07057516")); boolean z = (x && y); if (z == true) { mainJFrame.dispose(); mainJFrame.setVisible(false); } else { nameinput.setText(" "); passwordinput.setText(" "); JOptionPane.showMessageDialog(new HelloWorld(), "输入有误!"); } } else if (st.equals("取消")) { nameinput.setText(" "); passwordinput.setText(" "); } } }}希望你能采纳!
转载请注明出处51数据库 » jpasswordfield show
点赞点赞呀咩待