java

导航

Swing常用组件

来源 :中华考试网 2020-11-06

  面板类JPanel

  JPanel类常用来作为一批组件如JButton,JTextBox等的容器,一般来说对它的常见操作有设置其边框,设置其布局等.

  设置边框代码:

  setBorder(BorderFactory.createTitledBorder(title));

  设置布局代码示例:

  setLayout(new GridLayout(4, 1));

  add(nameInputPanel);

  add(ageInputPanel);

  add(titleInputPanel);

  add(ButtonsPanel);

  按钮类JButton

  当我们需要向界面添加按钮时需要用到JButton类.以下是它的一些常用方法

  1.创建Button类实例

  JButton csvButton=new JButton("csv下载");

  2.设置按钮的最大尺寸,最小尺寸,首选尺寸.

  Dimension dimension = new Dimension(80, 20);

  csvButton.setMaximumSize(dimension);

  csvButton.setMinimumSize(dimension);

  csvButton.setPreferredSize(dimension);

  单选框JRadioButton

  我们需要单选按钮时需要用到JRadioButton,它的常用方法如下:

  1.创建

  JRadioButton xmlRadio=new JRadioButton("Xml",true);

  JRadioButton db4oRadio=new JRadioButton("Db4o",false);

  2.分组

  ButtonGroup group = new ButtonGroup();

  group.add(xmlRadio);

  group.add(db4oRadio);

  group.add(sqlRadio);

  group.add(hibenateRadio);

  3.取得单个JRadioButton是否被选择

  boolean isSelected=db4oRadio.isSelected()

  4.取得一组JRadioButton中被选择的单元的文字

  for (Enumeration e=group.getElements(); e.hasMoreElements(); ) {

  JRadioButton b = (JRadioButton)e.nextElement();

  if (b.getModel() == group.getSelection()) {

  return b.getText();

  }

  }

  标签组件JLabel

  JLabel是标签控件,也是Swing组件中最简单常用的一个.

  创建JLabel:

  JLabel label=new JLabel(“ABC");

  修改标签文字

  label.setText("DEF");

  单行文本框JTextField

  需要输入单行文字时我们可以用到JTextField,它的使用也很简单.

  填写下面表单即可预约申请免费试听java课程!害怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

  创建:

  JTextField textBox=new JTextField();

  设置文本框文字:

  textBox.setText("ABC");

  取得文本框文字:

  String text=textBox.getText();

  复合框JComboBox

  JComboBox是既能提供输入又能提供选择一项的选择控件.

  1) 创建JComboBox

  String[] items = {"item1", "item2"};

  JComboBox editableCB = new JComboBox(items); editableCB.setEditable(true);

  表格控件JTable

  表格控件是相对复杂的Swing控件之一,使用也相对复杂.

  1) 创建表格控件

  JTable table = new JTable();

  2) 设置表格行高

  table.setRowHeight(20);

  3) 设置表格的行数和列数

  DefaultTableModel tableModel = (DefaultTableModel) table

  .getModel();

  tableModel.setColumnCount(0);

  tableModel.setRowCount(0);

  4) 给表格添加表头

  String[] headers = {"姓名","年龄", "职务"};

  for (int i = 0; i < headers.length; i++) {

  tableModel.addColumn(headers[i]);

  }

  5) 向表格添加内容

  public void fillTable(List members){

  DefaultTableModel tableModel = (DefaultTableModel) table

  .getModel();

  tableModel.setRowCount(0);

  for(Member member:members){

  String[] arr=new String[5];

  arr[0]=member.getName();

  arr[1]=member.getAge();

  arr[2]=member.getTitle();

  tableModel.addRow(arr);

  }

  table.invalidate();

  }

  6) 取得表格内的内容

  public List getShowMembers(){

  List members=new ArrayList();

  DefaultTableModel tableModel = (DefaultTableModel) table

  .getModel();

  int rowCount=tableModel.getRowCount();

  for(int i=0;i

  Member member=new Member();

  member.setName((String)tableModel.getValueAt(i, 0));

  member.setAge((String)tableModel.getValueAt(i, 1));

  member.setTitle((String)tableModel.getValueAt(i, 2));

  members.add(member);

  }

  return members;

  }

分享到

相关资讯