大数据分析技术之JAVA基础(六):组件和事件处理

写在开头:今天刚好学习了JAVA的组件与事件于是来简单的分享一下。就是简单的做着玩的。

学习内容安排

JAVA基础课程学习:数据类型(一)、运算符表达式和程序结构控制(二)、面向对象基础:类与对象和接口(三)、面向对象基础:继承抽象多态封装(四)、异常类和常用实用类(五)、组件和事件处理(六)、IO和JDBC(七)、泛型和集合函数(八)。

六、组件和事件处理

在编写之前呢,笔者推荐使用的NetBeans作为JAVA的编辑器,因为对于本节的内容,NetBeans自带了可视化的界面实现,非常的方便,那么对于本节我们会将一些基本的概念,然后直接调用一个例子进行讲解。
在Component类中的部分子类的示意图如下,在这里插入图片描述左边就是控件,比如有按钮、文本框等等,右边呢就是窗口有对话框已经一个Frame大的面板。我们需要在Frame上添加各种控件,下面板来实现一个GUI的界面。由于有NetBeans自带可视化开发工具,那么我们就减少对于编程细节的讲解。首先来认识一下标签类。
1.JLabel标签
标签就是一段文字来起到说明作用,是最简单的Swing组件。可以使用的方法有setText(String s)用来显示文字,比如在文本框里的文字显示,其他的比如颜色背景设置均可以通过可视化的按钮进行操作。
在这里插入图片描述
2.JButton按钮
按钮就是用来激发动作事件的,比如我们常见的QQ点击登录就会触发登录事件,但如果单独设置一个按钮是没用的,因为他无法调动其他程序,这个时候需要设置动作监视器addActionListener(),通过添加监视器,能够使得按钮“活起来”。在这里插入图片描述大概的图就是这个样子的,按钮点击激活监听接口,然后激活方法。一些常用的方法在下面列出,在这里插入图片描述
3.JTextField文本框
然后我们就是要介绍JTextField文本框,也就是比如像登录QQ界面需要输入QQ号的那一段就是文本框,文本框的操作比较多,一般可以对文本框添加ActionListener监听器或者setText设置文本框内容。在这里插入图片描述
4.JTextArea文本
这个类支持输入多行文字的文本框,可以设置其文本的规模,在这里插入图片描述5.JCheckBox复选框
形状是一个小方框,选中后会打钩,同时可以有多个选择框备选中,这样的叫做复选框。常用函数在下面,在这里插入图片描述6.JRadioButton单选框
他的功能与复选框相似,但是因为对于同一组的单选按钮汇总只有一个能够备选中,这里值得注意的是,如果要激活JRadioButton需要使用的是ItemLiscenter监听器,在这里插入图片描述
7.JComboBox
这个类别是一种下拉式的菜单,点击一下后就会展示全部的选项,这个一般也是用ItemLiscenter监听器,在这里插入图片描述
8.JOptionPane
这个类里面包含比如有消息对话框(showMessageDialog)、输入对话框(showInputDialog)、确认对话框(showConfirmDiaglog)。这些的对话框可以起到在点击按钮后的一些进一步的功能。我们以一个完整的例子来进行展示。
9.实际操作详解
首先在NetBeans里面新建JFrame窗口,我们想要做一个QQ登录的窗口,于是拖动按钮来构造成下面这个样子,
在这里插入图片描述
下面来依次讲一下每个组件能够对应的功能,首先来讲JComBox下拉框,
8.1JComBox设置
这个框里储存着已有的账号信息,我们可以点击JComBox然后右键在属性中找到model,在这里插入图片描述点开右边后输入部分QQ号,这样下拉组件就做出来了。在这里插入图片描述
注意这里为了让下拉菜单一开始不显示我们需要在属性中选择selectindex然后点击右边的按钮,进入后选择上方的定制代码输入-1即可。
8.2JButton设置
然后我们来讲一下注册账号的JButton按钮,为了激活这个按钮我们需要添加ActionLiscenter监听器,监听器可以通过点击按钮然后右键,然后事件、Action、然后ActionLiscenter,在弹出的源代码中编写我们激活后的事件。我们假定点击这个后我们需要输入新的账号和新的密码,并在确定后显示在账号密码界面上,这里账号界面采用的专门的密码文本框,可以遮挡密码。实现部分的代码如下,
通过淡出一个确认框,判断是否需要注册新账户,然后用两个输入框分别输入账号与密码,然后利用addItem来添加账号,并用setSelectedIndex来定位下拉框显示的是新输入的账号,

        // TODO add your handling code here:
        int x =JOptionPane.showConfirmDialog(this, "是否注册新账户", "对话框",JOptionPane.YES_NO_OPTION);
        if(x == JOptionPane.YES_OPTION){
            String str1 = JOptionPane.showInputDialog(this, "新账号","账户注册",JOptionPane.YES_NO_OPTION);
            String str2 = JOptionPane.showInputDialog(this, "设置密码","账户注册",JOptionPane.YES_NO_OPTION);
            jComboBox1.addItem(str1);
            int length = jComboBox1.getItemCount();
            jComboBox1.setSelectedIndex(length-1);//注册新账户时显示账户
            jPasswordField1.setText(str2); //显示密码
        }

下面是按钮操作的展示,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8.3找回密码设置
这里我们模拟一下找回密码并重置的过程,具体实现处的代码如下,首先弹出个确认框来确认修改密码,然后使用输入框来修改密码,

        int y = JOptionPane.showConfirmDialog(this,"请发送12345到1324264826","重置密码",JOptionPane.OK_CANCEL_OPTION);
        if(y == JOptionPane.OK_OPTION){
            String str3 = JOptionPane.showInputDialog(this, "请输入新密码","修改密码",JOptionPane.YES_NO_OPTION);
            jPasswordField1.setText(str3);
        }

在这里插入图片描述
在这里插入图片描述
8.4自动登录设置
根据习惯我们点击自动登录后会自动的填充QQ账号与QQ密码,下面我们展示一下实际代码,通过isSelected来判断是否选中,然后利用索引来展示特定账号与密码,如果没有选中则取消显示,

        if(jCheckBox2.isSelected()){
            jComboBox1.setSelectedIndex(0);
            jPasswordField1.setText("mxj666");
        }else{
            jComboBox1.setSelectedIndex(-1);
            jPasswordField1.setText("");
        }

在这里插入图片描述
在这里插入图片描述
8.5单选锁定
在记住密码中和自动登录中,我们由于没有很好的想法,于是就随意的实现了一个单选锁定,也就是说只能选中两者之一,这个时候我们需要用到的是图中的按钮组,添加这个后再进行一点操作两者就只能单元选了,在这里插入图片描述
将按钮组拖入界面,不会显示,然后右键记住密码,选择定制代码,然后在空白处输入上面的add语句即可,对于然后再用同样的方式对自动登录设置add后就只能二选一啦。在这里插入图片描述
8.6登录设置
当我们登录的时候还是希望看到有登录的提示吧,所以我们添加一个消息框,来提示我们正在输入,于是对登录按钮添加一个监听器,并填写代码为,通过下年这行代码就可以展示我们的登录等待界面了,

JOptionPane.showMessageDialog(this,"正在登录中......","QQ",JOptionPane.PLAIN_MESSAGE);

在这里插入图片描述


结语
好啦,以上就是今天关于组件和事件的处理的简单代码啦,对于更复杂的数据库方面的设置连接我们会在后文进行更新。
谢谢阅读。

猜你喜欢

转载自blog.csdn.net/qq_35149632/article/details/105160425