java 图形用户界面 的问题

java 图形用户界面 的问题,第1张

你好,你的这个问题已经基本解决了,出现你这种情况是因为你没有完全明白java中全局变量与局部变量关系的问题。在你的程序中,你将JButton定义在一个方法之中,本质上讲,你的button只是一个局部变量,因此你在注册事件时,会提示找不到事件源。另外,actionPerformed事件一般只用于按钮,所以文本框以及密码框没有必要注册actionPerformed事件。

下面的程序中基本上已经改好了,但是当输入全部为空的时候还是会出现问题的,但是本质的问题我已经帮你解决了,其他的问题,你慢慢探讨吧。下面是修改后的程序:

package org.twq.java

import javax.swing.*

import java.awt.*

import java.awt.event.*

//模拟邮箱登陆

public class Email implements ActionListener {

char[] password = { '1', '2', '3' }// 正确的密码

String id = "hao"// 正确的用户名

JPasswordField textpassword

JTextField textname

JLabel lbmsg

//

JPanel panel

JLabel lbname

JLabel lbpassword

JButton btn

public static void main(String[] agrs) {

JFrame f = new JFrame("邮箱登陆系统")

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

Email email = new Email()// 创建本身的一个对象email

JPanel panel = email.createComponents()// 调用init方法创建界面

f.getContentPane().add(panel)

f.setSize(200, 150)

f.setVisible(true)

}

// 在init中创建图形界面

public JPanel createComponents() {

panel = new JPanel(new FlowLayout())

lbname = new JLabel("用户:")

textname = new JTextField(10)

lbpassword = new JLabel("密码:")

textpassword = new JPasswordField(10)

btn = new JButton("登录")

lbmsg = new JLabel("请输入账密!")

//textname.addActionListener(this)

//textpassword.addActionListener(this)

btn.addActionListener(this)

panel.add(lbname)

panel.add(textname)

panel.add(lbpassword)

panel.add(textpassword)

panel.add(btn)

panel.add(lbmsg)

return panel

}

// 事件处理的方法

public void actionPerformed(ActionEvent e) {

boolean b = true

// 输入的密码保存到数组c中

char[] c = textpassword.getPassword()

// 输入的密码与正确的密码对比

for (int i = 0i <password.length - 1i++) {

if ((c[i] != password[i]) || (c.length != password.length)) {

b = false

break

}

}

if (!textname.getText().equalsIgnoreCase(id)) {

lbmsg.setText("该用户名不存在,请重新输入!")

textpassword.setText("")

textname.setText("")

} else {

if (b) {

lbmsg.setText("登录成功,欢迎回来!")

} else {

lbmsg.setText("密码输入有误,重新输入!")

textpassword.setText("")

}

}

}

}

有的时候 不要考虑纯web网页,从移动端作为入口去爬是最简单的方法

http://m.mail.163.com/?come=wap

这个是163手机邮箱的地址,从这里去找表单提交的方法,通过httpclient模拟提交表单,然后读取邮件列表

再通过httpclient去打开邮件取数据

给你思路了 剩下的可以去写代码了~

点击链接--跳转到修改密码的页面--而后输入原来密码,并输入两次新的密码--

点击修改,经过判断,符合要求,提示密码修改成功--下次登录输入新密码即可。

服务器如何解析??

这个是什么意思。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/419952.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-25
下一篇2023-05-25

发表评论

登录后才能评论

评论列表(0条)

    保存