11/100保存草稿发布文章 博文管理我的博客退出加粗 斜体 标题 删除线 无序 有序 待办 引用 代码块 BashCC++C#CLikeCSSGoHandlebarsJavaJavaScriptKotlinMarkupObjective-CPerlPHPShellPythonRubySQLSwiftVB.NetYAML图片 视频 表格 超链接 摘要 添加摘要 导入 导出 保存 填写标题才可自动保存 撤销 重做 目录 帮助 TextField类的常用方法:
public String getText()获取文本框中的输入文本
public String getSelectedText()获取文本框中选中的文本
public Boolean isEditable()返回文本框是否可输入
public void setEditable(boolean b)设置文本框的状态
public int getColumns()获取文本框的宽度
public void setColumns(int Columns)设置文本框的宽度
public void setText(String t)设置文本框中的文本为t
面板(JPanel):
- 面板也是一种容器,可以将组件和其他面板添加到panel中,在程序中经常用于布局和定位。
- 与框架不同的是,面板对象不是一个单独的窗口,他只是包含在窗口中的一个区域,必须将面板添加到窗体中,通常是使用add()方法将panel添加到window和frame中。
- JPanel层次结构Container\panel\JPanel
文本域
- 文本域组件也是用来接收用户输入或程序输出的,不过与文本框不同的是,他允许进行多行输入或输出,因而他一般用于处理大量文本的情形。
- AWT提供的文本域组件为TextArea类,它也是从TextCompenon类继承而来。
多行文本加滚动条:
package com.imau.gui;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import java.awt.Color;
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
public class PanelDemo extends JFrame{
pivate JPanel panel;
private JButton button;
private JTextArea area;
private JScrollPane scrollPane;
private void init(){
area=new JTextArea("多行文本框",3,10);
scrollPane=new JScrollPane(area);
scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);//滚动条永远在
this.setLayout(new FlowLayout());
this.setTitle("QQ登录");
this.setSize(400,300);
this.setLocation(400,300);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public PanelDemo(){
init();
}
}
复选框:
-
复选框组件也是图形界面上用于接受用户输入的一种快捷方式,一般是的界面上提供多个复选框选项,用户根据实际情况,可以多选也可以都不选。
-
AWT提供的复选框类为Checkbox。
-
事实上,该组建类类似于具有开关选项的按钮,用户单击选中,再单击则取消选中。
private JCheckBox box1,box2; box1=new JCheckBox("运动"); box2=new JCheckBox("读书"); this.add(box1); this.add(box2);
多选按钮判断是否被选中
box1.isSelected();
单选框:
-
在有些情况,程序界面可能给用户提供多个选项,但是只允许用户选其中一个,这就是单选框的概念。
-
事实上,单选框是从上面复选框衍生而来的,他也采用checkbox作为其组件类,不过为了实现单选效果,还需要另外一个组件类:checkboxgroup,当我们把这个checkbox类对象添加进某个checkbox group对象后,他就成为了单选框。
private JRadioButton r1,r2; r1=new JRadioButton("男"); r2=new JRadioButton("女"); this.add(r1); this.add(r2);
单选按钮判断是否被选中
r1.isSelected();
列表框
-
列表框组件看起来像文本域,可以有多行,每一行文本代表一个选项,文本域组件多用于用户编辑之用,而列表框多用于给用户几个选项进行选择,可以多选也可以单选。
-
AWT提供的列表框类为List,它直接继承于Component类。
private JList <String> list; list=new JList<String>(new String[]{"A","B","C","D","E"}); list.setVisibleRowCount(3);//设置可见几项,配合滚动面板 scrollPane=new JScrollPane(list);
获取选项:
list.getSelectedIndex();
list.getSelectedIndices();
list.getSelectedvalues();
下拉框:
-
下拉框组件提供一些选项供用户来选择,每次只能选一个,选中的选项会被单独显示出来,而改变选项就可以通过单击组件边上的箭头,再从下拉框中进行选择来完成。下拉框相比列表框而言,占据较小的界面区域。
-
AWT提供的下拉框类为Choice,它直接继承于Component类。
private JComboBox <String> comboBox; comboBox=new JComboBox<>(new String[]{"A","B","C","D","E"}); this.add(comboBox); comboBox.addItem("FFF");//添加项目 comboBox.getSelectedItem();//获取选项 comboBox.getSelectedIndex();
滚动条:
-
滚动条是图形用户界面中常见的组件之一,他既可以用作取值器,也可以用来滚动显示某些较长的文本信息。
-
AWT提供的滚动条类为ScrollBar,他也是直接从component组件继承而来。
private JProgressBar progressBar; progressBar=new JProgressBar(0,100);//进度显示 progressBar.setValue(66);//设置显示进度 progressBar.setStringPainted(true);//设置显示提示 progressBar.setIndeterminate(true);//设置是否精确进度条。false精确,true不精确
菜单
-
菜单将系统的各种功能选项以直观的方式展现出来,供用户选择,大大方便了用户与系统间的交互。
-
菜单相比其他组件类特殊,他是由几个菜单相关类共同构成的菜单系统。AWT提供的菜单系统类包括:MenuBar、MenuItem、Menu、CheckboxMenuItem以及PopupMenu。
private JMenuBar jMenuBar; private JMenu menu1,menu2; private JMenuItem item1,item2,item3,item4; menuBar=new JMenuBar(); menu1=new JMenu("文件"); menu1=new JMenu("编辑"); item1=new JMenuItem("新建"); item2=new JMenuItem("关闭"); item3=new JMenuItem("复制"); item4=new JMenuItem("粘贴"); menu1.add(item1);//添加菜单项到菜单中 menu1.addSeparator();//添加分割符 menu1.add(item2); menu2.add(item3); menu2.add(item4); menuBar.add(menu1);//菜单添加到菜单工具栏 menuBar.add(menu2); this.setJMenuBar(menuBar);//菜单栏添加到窗体上
Icon icon=new ImageIcon(“小黄花.jpg”);//插入图片
事件:
- 对对象所做的一组动作称为事件。
- 在GUI程序运行中,通过鼠标,键盘与GUI界面直接或间接交互都会生成事件。如:按下一个按钮、通过键盘输入一个字符、选择列表框中的一项、点击一下鼠标等。当事件发生后,系统会通知我们去处理这些事件。对这些事件作出相应处理的程序,称为事件处理器。
- 事件处理机制中,涉及到三个对象:事件本身、事件的来源和事件处理器。
- 事件是事件类的一个对象,事件类的根类是Java.util.EventObject。通常所用到的事件类在java.awt.event包中。
- 事件对象的属性包含了与事件相关信息。如可以使用EventObject类中的getSource()方法获得事件源。
事件源:
- 事件源是产生事件的对象。
- 一个事件源可能会生成不同类型的事件。
事件监听器:
- 事件监听器是在一个事件发生时被通知的对象,也称为事件处理器。
- 监听器对象属于一个监听器类的实例,这个类实现了一个特殊的接口,称为“监听者接口”。