`
gsg2009
  • 浏览: 12457 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

swing控件部分介绍

阅读更多
package picture;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class UserJFrame extends JFrame implements ActionListener,ItemListener {
private int number=1;                          //编号
private JTextField text_number,text_name;      //编号,姓名文本行
private JRadioButton radiobutton_male,radiobutton_female;   //性别按钮
private JComboBox combobox_province,combobox_city;          //省份,城市组合框
private JButton button_add;                                 //添加按钮
private JTextArea text_user;                               //文本区

public UserJFrame()
{
  super("输入用户信息");
  this.setSize(360,200);
  this.setLocation(300,240);
  this.setDefaultCloseOperation(EXIT_ON_CLOSE);    //单击窗口关闭按钮时,结束程序的运行
  this.setLayout(new GridLayout(1,2));             //网格布局,1行2列,左右分隔窗口
  text_user=new JTextArea();                       //创建文本区
  this.add(text_user);                  //占据窗口左半部分
  JPanel panel=new JPanel(new GridLayout(6,1));      //面板网格布局,6行1列
  this.add(panel);                              //占据窗口的右半部分
 
  text_number=new JTextField("1");        //编号文本行
  text_number.setEditable(false);                //不可编辑,自动生成编号
  panel.add(text_number);
  text_name=new JTextField("姓名");
  panel.add(text_name);
 
  JPanel panel_radiobutton=new JPanel(new GridLayout(1,2));  //单选按钮子面板,网格
  panel.add(panel_radiobutton);
  ButtonGroup buttongroup=new ButtonGroup();      //按钮组
  radiobutton_male=new JRadioButton("男",true);
  buttongroup.add(radiobutton_male);                //单选按钮添加到按钮组
  panel_radiobutton.add(radiobutton_male);          //单选按钮添加到子面板
 
  radiobutton_female=new JRadioButton("女");
  buttongroup.add(radiobutton_female);
  panel_radiobutton.add(radiobutton_female);
 
  Object province[]={"江苏省","浙江省"};
  combobox_province=new JComboBox(province);     //省份组合框
  combobox_province.addItemListener(this);      //注册组合框的选择事件监听器
  panel.add(combobox_province);
 
  Object city[]={"南京市","苏州市","无锡市"};
  combobox_city=new JComboBox(city);
  panel.add(combobox_city);
 
  button_add=new JButton("添加");
  button_add.addActionListener(this);
  panel.add(button_add);
  this.setVisible(true); 
}
public void itemStateChanged(ItemEvent e)     //在组合框的下拉列表中选择数据项时触发执行
{
  if(combobox_province.getSelectedIndex()==0)   //在省份组合框中选择了江苏省
  {
   combobox_city.removeAllItems();       //清除地区组合框中所有内容
   combobox_city.addItem("南京市");
   combobox_city.addItem("苏州市");
   combobox_city.addItem("无锡市");
  }
  if(combobox_province.getSelectedIndex()==1)   //在省份组合框中选择了浙江省
  {
   combobox_city.removeAllItems();
   combobox_city.addItem("杭州市");
   combobox_city.addItem("宁波市");
   combobox_city.addItem("温州市");
  }
}
public void actionPerformed(ActionEvent e)    //单击事件按钮触发执行
{
  if(e.getSource()==button_add)
  {
   String aline="";
   aline=number+","+text_name.getText();
   if(radiobutton_male.isSelected())
    aline+=","+radiobutton_male.getText();     //获得单选按钮表示的性别字符串
   if(radiobutton_female.isSelected())
    aline+=","+radiobutton_female.getText();
   aline+=","+combobox_province.getSelectedItem();  //获得组合框选中数据项的字符串
   aline+=","+combobox_city.getSelectedItem();
   text_user.append(aline+"\n");      //文本区添加一行字符串
  
  
   this.number++;
   text_number.setText(""+this.number);
   text_name.setText("姓名 " );
  }
}

public static void main(String[] args) {
  new UserJFrame();

}

}


/*
* 程序详解:(知识详解,控件详解)
*/


/*JComboBox空间的介绍:
* public class JComboBox extends JComponentimplements ItemSelectable, ListDataListener, ActionListener, Accessible
* 1〉将按钮或可编辑字段与下拉列表组合的组件。用户可以从下拉列表中选择值,下拉列表在用户请求时显示。如果使组合框处于可编辑状态,
*    则组合框将包括用户可在其中键入值的可编辑字段
* 2〉JComboBox(Object[] items)    创建包含指定数组中的元素的 JComboBox。
* 3〉public void addActionListener(ActionListener l)当作出选择时,ActionListener 将接收一个 ActionEvent。如果组合框可编辑,
*    则在编辑停止时将触发 ActionEvent。   public void removeActionListener(ActionListener l)
* 4〉public void addItem(Object anObject)为项列表添加项。仅当 JComboBox 使用可变数据模型时此方法才有效。
* 5〉public void insertItemAt(Object anObject,int index)在项列表中的给定索引处插入项。仅当 JComboBox 使用可变数据模型时此方法才有效。
* 6〉public void removeItem(Object anObject)从项列表中移除项。仅当 JComboBox 使用可变数据模型时此方法才有效。
* 7> public void removeItemAt(int anIndex)移除 anIndex 处的项。仅当 JComboBox 使用可变数据模型时此方法才有效。
* 8> public void removeAllItems()从项列表中移除所有项
* 9> public void addItemListener(ItemListener aListener)当所选项更改时,aListener 将接收一个或两个 ItemEvent
* 10> public void removeItemListener(ItemListener aListener)移除 ItemListener。
* 11> public boolean selectWithKeyChar(char keyChar)如果存在与指定键盘字符相对应的项,则选择该列表项并返回 true。否则,返回 false。
* 12>public int getItemCount()返回列表中的项数。
* 13>public Object getItemAt(int index)返回指定索引处的列表项。如果 index 超出范围(小于零或者大于等于列表大小),则返回 null。
* 14>protected String paramString()返回此 JComboBox 的字符串表示形式。此方法仅在进行调试时使用,对于各个实现,
*    所返回字符串的内容和格式可能有所不同。返回的字符串可以为空,但不可以为 null
*/

/*Serializable接口的介绍:
* public interface Serializable
* 类通过实现 java.io.Serializable 接口以启用其序列化功能。未实现此接口的类将无法使其任何状态序列化或反序列化。
* 可序列化类的所有子类型本身都是可序列化的。序列化接口没有方法或字段,仅用于标识可序列化的语义。
*/

/*JCheckBox
* public class JCheckBox extends JToggleButtonimplements Accessible
*构造方法:
* JCheckBox()           创建一个没有文本、没有图标并且最初未被选定的复选框。
   JCheckBox(Action a)           创建一个复选框,其属性从所提供的 Action 获取。
   JCheckBox(Icon icon)           创建有一个图标、最初未被选定的复选框。
   JCheckBox(Icon icon, boolean selected)           创建一个带图标的复选框,并指定其最初是否处于选定状态。
   JCheckBox(String text)           创建一个带文本的、最初未被选定的复选框。
   JCheckBox(String text, boolean selected)           创建一个带文本的复选框,并指定其最初是否处于选定状态。
   JCheckBox(String text, Icon icon)           创建带有指定文本和图标的、最初未选定的复选框。
   JCheckBox(String text, Icon icon, boolean selected)           创建一个带文本和图标的复选框,并指定其最初是否处于选定状态。
*  
*/

/*JRadioButton
* public class JRadioButton extends JToggleButtonimplements Accessible
* 构造方法:
* JRadioButton()           创建一个初始化为未选择的单选按钮,其文本未设定。
   JRadioButton(Action a)           创建一个单选按钮,其属性来自提供的 Action。
   JRadioButton(Icon icon)           创建一个初始化为未选择的单选按钮,其具有指定的图像但无文本。
  JRadioButton(Icon icon, boolean selected)           创建一个具有指定图像和选择状态的单选按钮,但无文本。
   JRadioButton(String text)           创建一个具有指定文本的状态为未选择的单选按钮。
   JRadioButton(String text, boolean selected)           创建一个具有指定文本和选择状态的单选按钮。
   JRadioButton(String text, Icon icon)           创建一个具有指定的文本和图像并初始化为未选择的单选按钮。
   JRadioButton(String text, Icon icon, boolean selected)           创建一个具有指定的文本、图像和选择状态的单选按钮。
*
*/

/*JButton
* public class JButton extends AbstractButtonimplements Accessible
* 构造方法摘要
   JButton()           创建不带有设置文本或图标的按钮。
   JButton(Action a)           创建一个按钮,其属性从所提供的 Action 中获取。
   JButton(Icon icon)           创建一个带图标的按钮。
   JButton(String text)           创建一个带文本的按钮。
   JButton(String text, Icon icon)           创建一个带初始文本和图标的按钮。
*
*
*
*  Button
*  public class Button extends Componentimplements Accessible
*  构造方法摘要
*  Button()           构造一个标签字符串为空的按钮。
    Button(String label)           构造一个带指定标签的按钮。
*  1〉 public void addActionListener(ActionListener l)添加指定的动作侦听器,以接收发自此按钮的动作事件。
*      当用户在此按钮上按下或释放鼠标时,发生动作事件。如果 l 为 null,则不抛出任何异常,也不执行任何动作。
*  2〉 public void removeActionListener(ActionListener l)
*  3〉 public ActionListener[] getActionListeners()返回在此按钮上注册的所有动作侦听器的一个数组。
*  4〉 public void setLabel(String label)将按钮的标签设置为指定的字符串。
*  5〉 public void setActionCommand(String command)设置此按钮激发的动作事件的命令名称。在默认情况下,此动作命令设置为与按钮标签相匹配。
*  6〉 public String getActionCommand()返回此按钮激发的动作事件的命令名称。如果命令名称为 null(默认),则此方法返回按钮的标签。
*/

/*JLabel
* public class JLabel extends JComponentimplements SwingConstants, Accessible
* 构造方法摘要
   JLabel()           创建无图像并且其标题为空字符串的 JLabel。
   JLabel(Icon image)           创建具有指定图像的 JLabel 实例。
   JLabel(Icon image, int horizontalAlignment)           创建具有指定图像和水平对齐方式的 JLabel 实例。
   JLabel(String text)           创建具有指定文本的 JLabel 实例。
   JLabel(String text, Icon icon, int horizontalAlignment)           创建具有指定文本、图像和水平对齐方式的 JLabel 实例。
   JLabel(String text, int horizontalAlignment)           创建具有指定文本和水平对齐方式的 JLabel 实例。
*1〉 public String getText()返回该标签所显示的文本字符串。
*2〉 public void setText(String text)定义此组件将要显示的单行文本。如果 text 值为 null 或空字符串,则什么也不显示。
*3〉 public Icon getIcon()返回该标签显示的图形图像(字形、图标)。
*4〉 public void setIcon(Icon icon)定义此组件将要显示的图标。如果 icon 值为 null,则什么也不显示。
*5〉 public int getIconTextGap()返回此标签中显示的文本和图标之间的间隔量。
*6〉 public void setVerticalAlignment(int alignment)设置标签内容沿 Y 轴的对齐方式。
*7〉 public void setHorizontalAlignment(int alignment)设置标签内容沿 X 轴的对齐方式。
*/


/*JTextField
*  public class JTextField extends JTextComponentimplements SwingConstants
*  构造方法摘要
    JTextField()           构造一个新的 TextField。
    JTextField(Document doc, String text, int columns)           构造一个新的 JTextField,它使用给定文本存储模型和给定的列数。
    JTextField(int columns)           构造一个具有指定列数的新的空 TextField。
    JTextField(String text)           构造一个用指定文本初始化的新 TextField。
    JTextField(String text, int columns)           构造一个用指定文本和列初始化的新 TextField。
    1〉public int getColumns()返回此 TextField 中的列数。
    2〉public void setColumns(int columns)设置此 TextField 中的列数,然后验证布局。
    3〉public void setFont(Font f)设置当前字体。这将移除缓存的行高和列宽,以便新的字体能够反映出来,设置字体后将调用 revalidate。
    4〉public void addActionListener(ActionListener l)添加指定的操作侦听器以从此文本字段接收操作事件。
    5〉public void removeActionListener(ActionListener l)移除指定的操作侦听器,以便不再从此文本字段接收操作事件。
    6〉public void setActionCommand(String command)设置用于操作事件的命令字符串。
    7〉public void setScrollOffset(int scrollOffset)获取滚动偏移量(以像素为单位)。 
*/

/*JTextArea
* public class JTextArea extends JTextComponent
* 构造方法摘要
   JTextArea()           构造新的 TextArea。
   JTextArea(Document doc)           构造新的 JTextArea,使其具有给定的文档模型,所有其他参数均默认为 (null, 0, 0)。
   JTextArea(Document doc, String text, int rows, int columns)           构造具有指定行数和列数以及给定模型的新的 JTextArea。
   JTextArea(int rows, int columns)           构造具有指定行数和列数的新的空 TextArea。
   JTextArea(String text)           构造显示指定文本的新的 TextArea。
   JTextArea(String text, int rows, int columns)           构造具有指定文本、行数和列数的新的 TextArea。
  *1〉public int getLineCount()确定文本区中所包含的行数。
  *2〉public void insert(String str,int pos)将指定文本插入指定位置。如果模型为 null 或者文本为 null 或空,则不执行任何操作。
  *3〉public void append(String str)将给定文本追加到文档结尾。如果模型为 null 或者字符串为 null 或空,则不执行任何操作。
  *4〉public void replaceRange(String str, int start, int end)用给定的新文本替换从指示的起始位置到结尾位置的文本。如果模型为 null,
  *   则不执行任何操作。如果新字符串为 null 或为空,则只执行简单的删除操作。
  *5〉public int getRows()返回 TextArea 中的行数
  *6〉public void setRows(int rows)设置此 TextArea 的行数。设置新值之后调用 invalidate()。
  *7〉public void setFont(Font f)设置当前字体。这将移除缓存的行高和列宽,以便新的字体能够反映出来,并且调用 revalidate()。
  
*/


/*JList
* public class JList extends JComponentimplements Scrollable, Accessible
* 构造方法摘要
   JList()           构造一个具有空的、只读模型的 JList。
   JList(ListModel dataModel)           根据指定的非 null 模型构造一个显示元素的 JList。
   JList(Object[] listData)           构造一个 JList,使其显示指定数组中的元素。
   JList(Vector<?> listData)           构造一个 JList,使其显示指定 Vector 中的元素。
* 1〉public int getNextMatch(String prefix,int startIndex,Position.Bias bias)返回其 toString 值以给定前缀开头的下一个列表元素。
* 2〉public void addListSelectionListener(ListSelectionListener listener)将侦听器添加到列表,每次选择发生更改时将获得通知;这是侦听选择状态更改的首选方式。
*    JList 负责侦听选择模型中选择状态更改,并通知每个更改的给定侦听器。发送到侦听器的 ListSelectionEvent 具有设置为此列表的 source 属性。
* 3〉public void removeListSelectionListener(ListSelectionListener listener)  
*/


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jxzhoumin/archive/2007/08/04/1725996.aspx
分享到:
评论

相关推荐

    swing复杂控件使用

    Swing是Java编程环境中用于构建图形用户界面(GUI)的一个组件库,它是Java Foundation Classes (JFC)的一部分。Swing提供了丰富的控件集合,使得开发者能够创建功能强大的桌面应用程序。在"swing复杂控件使用"这个...

    JavaSwing界面设计(所有控件及示例)

    Swing组件继承自Java AWT组件层次结构,主要分为以下几个部分: - `java.lang.Object` 是所有对象的基类。 - `java.awt.Component` 是所有图形组件的基础,包括可视和不可视组件。 - `java.awt.Container` 是...

    java swing控件

    ### Java Swing 控件详解 #### 引言 Java Swing 是一套强大的图形用户界面(GUI)工具包,旨在为 Java 应用程序提供丰富的组件和功能。相比于早期的 AWT(Abstract Window Toolkit),Swing 提供了更多的灵活性和...

    java swing 时间控件

    Java Swing 是Java GUI(图形用户界面)库的一部分,用于创建桌面应用程序。在Swing中,时间控件通常指的是可以展示和处理日期与时间的组件。本主题将深入讲解如何在Java Swing中创建和使用时间控件,以及如何利用...

    java Swing日期控件

    Java Swing 是 Java GUI(图形用户界面)库的一部分,它提供了丰富的组件来构建桌面应用程序。在 Swing 中,日期控件主要用于用户交互,允许用户选择或输入日期。这些控件使得应用程序可以方便地处理与日期相关的...

    gui swing 控件-源代码

    标题“GUI Swing 控件-源代码”表明这是一个包含Swing控件使用示例的源代码集合。这样的资源对于学习和快速应用Swing组件到实际项目中非常有价值。通过查看和运行这些源代码,开发者可以直观地理解如何创建、配置和...

    swing控件及事件

    Swing控件与事件在Java GUI编程中占有重要的地位,特别是在构建复杂的用户界面时,如学生管理系统。JBuild2006是一款早期的Java开发工具,它提供了对Swing库的支持,帮助开发者创建桌面应用程序。在这个学生管理系统...

    java swing 时间日期选择控件

    Java Swing 是Java GUI(图形用户界面)库的一部分,它提供了丰富的组件来构建桌面应用程序。在Swing中,处理日期和时间选择的控件是至关重要的,因为它们为用户提供了一个直观的方式来选择日期或时间,而无需手动...

    JAVA SWING 日期控件(目前支持JLable和JTextField,若有需要可自行扩展其它控件)

    这篇博客(博文链接:https://zgdeng.iteye.com/blog/1405459)可能详细介绍了如何实现一个自定义的日期选择组件,目前该控件支持JLabel和JTextField,但其设计使得开发者可以根据需要扩展到其他Swing控件。...

    java swing 日期控件

    Java Swing 是Java GUI(图形用户界面)库的一部分,用于创建桌面应用程序。在Swing中,日期控件主要用于显示和选择日期,为用户提供直观的日期选择界面。本篇文章将深入探讨Java Swing中的日期控件,包括其功能、...

    Swing控件源程序

    在这个"Swing控件源程序"的压缩包中,很可能是包含了一些Swing组件的源代码,供学习和参考。 Swing组件库包括了各种各样的控件,如按钮、文本框、标签、滚动面板、菜单、对话框等,这些控件都继承自轻量级组件体系...

    一个swing的日历控件

    Swing是Java编程语言中的一个图形用户界面(GUI)工具包,它是Java Foundation Classes (JFC)的一部分。在Java中,Swing提供了丰富的组件库,用于创建美观且功能强大的桌面应用程序。"一个Swing的日历控件"指的是使用...

    java swing控件演示

    JFrame frame = new JFrame("Swing控件演示"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(); JButton button = new JButton("点击我"); button.addActionListener(e ...

    JAVA swing基本控件实例

    Java Swing 是Java GUI(图形用户界面)库的一部分,它提供了丰富的组件来构建桌面应用程序。...每一个项目都是一个学习Swing控件及其交互的好例子,对于任何想要深入Java桌面应用开发的人来说,这些都是宝贵的资源。

    Java-Swing控件实例代码

    本压缩包“Java-Swing控件实例代码”包含了Swing控件的实际编程示例,帮助开发者深入理解和应用这些组件。 在Swing中,控件(或组件)是构成用户界面的基本元素,如按钮、文本框、菜单等。以下是一些主要的Swing...

    java的Swing控件实例

    Swing控件是轻量级的,它们不依赖于操作系统,因此可以在不同平台上提供一致的用户体验。 Swing组件基于Abstract Window Toolkit (AWT),但相比AWT,Swing提供了更多功能和更好的可定制性。Swing控件主要分为几大类...

    swing窗体控件学习文档

    这份"swing窗体控件学习文档"很可能是对Swing控件的详细讲解,帮助开发者掌握如何在Java程序中使用这些控件。 Swing提供了许多基本和高级的组件,用于创建窗口、菜单、按钮、文本输入框、滚动面板等元素。下面我们...

    Swing 日期控件(jar包)

    Swing是Java编程语言中的一个图形用户界面(GUI)工具包,它是Java Foundation Classes (JFC)的一部分。在Swing中,开发人员可以创建丰富的、跨平台的桌面应用程序。Swing提供了一系列组件,如按钮、文本框、菜单等,...

Global site tag (gtag.js) - Google Analytics