标签:Rfr 界面 import void Swing JOptionPane Lfr JAVA public
有了两个窗口之后,接下来实现各类按钮功能,那就需要用到监听。
新建一个类实现ActionListener接口,这里把所有的button都设置同一个实例,为组件绑定不同的动作命令(ActionCommand)来区分当前触发事件的组件。
package login; //按钮监听类 import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class Bli implements ActionListener{ @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub String command = e.getActionCommand(); //按下登录按钮 if (Lfr.COMMAND_SIGNINBTN.equals(command)) { //弹出登录对话框 } //按下注册页面的注册按钮 else if (Rfr.COMMAND_RREGISTER.equals(command)) { //弹出注册对话框 } //按下重置按钮 else if (Lfr.COMMAND_RESET.equals(command)) { //删除所有文本框的文字 Lfr.username.setText(""); Lfr.password.setText(""); Rfr.conpassword.setText(""); //设置光标位置 Lfr.username.requestFocus(); } //按下登录界面的注册按钮 else if (Lfr.COMMAND_REGISTER.equals(command)) { //弹出注册界面 Rfr.register(); } } }
然后再新建一个类继承PlainDocument,重写里面的insertString方法,再为文本框添加这个类的构造方法,就可以限制文本框的输入。
package login; //文本框限制类 import javax.swing.text.AttributeSet; import javax.swing.text.BadLocationException; import javax.swing.text.PlainDocument; public class TxDocument extends PlainDocument{ private static final long serialVersionUID = 1L; int maxLength; //有参构造,参数为文本框输入字符最大长度 public TxDocument(int newMaxLength) { super(); maxLength = newMaxLength; } @Override public void insertString(int offset,String str, AttributeSet a) throws BadLocationException{ //字数超出范围 if (getLength() + str.length() > maxLength) { return; } //字数在范围内 else{ //调用父级方法插入字符 super.insertString(offset, str, a); } } }
最后再写一个弹窗类
package login; import javax.swing.JOptionPane; public class Opane { public static void registerOK() { JOptionPane.showMessageDialog( Rfr.frame2, "注册成功", "提示", JOptionPane.WARNING_MESSAGE ); } public static void registerWrong() { JOptionPane.showMessageDialog( Rfr.frame2, "两次密码不一致", "提示", JOptionPane.WARNING_MESSAGE ); } public static void loginOK() { JOptionPane.showMessageDialog( Lfr.frame, "登录成功", "提示", JOptionPane.WARNING_MESSAGE ); } }
其实到这里各类还是没有联系的,下一篇再使这些功能串起来。
标签:Rfr,界面,import,void,Swing,JOptionPane,Lfr,JAVA,public 来源: https://www.cnblogs.com/masahiko/p/14496342.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。