图像用户界面05.11

通过使用抽象窗口工具包(AWT)来创建图形用户界面(GUI)。AWT包提供的三种类:容器类、UI组件类、帮助类。
容器(container)实际上是component的子类,具有组件的所有性质。容器类具有功能是组件管理和布局管理。在组件管理中,包含有的方法add()、remove()、getcomponent()等,添加、删除、获得组件。container类可直接或间接派生出两个常用容器:框架(Frame)和面板(Panel)。
容器分为顶层容器和非顶层容器两大类。顶层容器可以独立的窗口,不需要其他组件支持。顶层容器的类是Windows,其重要子类是fram和dialog。非顶层容器不是独立窗口,必须位于窗口之内,非顶层容器包括panle及scrollpane等,panel的重要子类是applet类。container类的特点是:容器类可以容纳其他组件,加入容器中后,组件的位置由布局管理器决定。
帮助类:是所有用来在组件上进行图绘是使用的图形环境上下文的父类。
布局管理类:为容器设置布局管理类时,可调节容器类中的setlayout()方法。
标签是很简单的一组组件,一般用来显示标志性的文本信息,常被设置与其他组件的旁边起提示作用。AWT提供标签类label。
java中布局类型包括以下几种:FlowLayout(流式布局)生成一个默认的流式布局,int aligmengt可以设定每一行组件的对齐方式,int aligmeng,int horz,int vert可以设定组件间的水平和垂直距离。
、Borderlayout(边界布局)生成默认的边界布局,int horz,int vert(可以设定组件间的水平和垂直距离)、gridlayout(网格布局)、Cardlayout(卡片布局)、boxlayout(框布局)、gridbaglayout(网格包布局 )生成一个单列的网格布局,int row,int col(生成一个设定行数和列数的网格布局)
关于textfiled类的常用方法有:getText()输入文本、getSelectedText()选中的文本、isEditable()是否可输入、getCoumns()宽度、setEditable(boolean b)可输入或不可输入、setText(String t)文本为t。
文本域组件是用来接收用户输入或程序输出的,但他一般用于处理大量文本TextArea。
复选框组件Checkbox可以多选也可设置不选。组件具有开关选项的按钮,用户点击选中,再点击则取消选中。
按钮Button,list列表框可以有多行,每一行代表一个选项,属性getSelectedIndex()、getSelectedIndices()、getSeleectedValues(),list.setVisibleRowCount(t)设置可见t项,配合滚动条。下拉框Choice每次只能选一个,选中的会被单独显示出来,属性getSelectedItem()、getSelectedIndex()。滚动条类为Scrollbar:无参进度显示progressBar=new JProgressBar(0,100)
设置进度progressBar.setValue(66)、设置显示提示progressBar.setStringPainted(true)。
菜单相比其他组件类特殊,它是由几个菜单相关类共同构成的菜单系统。MenuBar、MenuItem、Menu、CheckboxMenuItem以及popupMenu。private JMenuBar menuBar;private IMenu menu1,menu2;private IMenuItem item1,item2,item3,item4;
menuBar=new JMenuBar();menui=new JMenuBar();
事件是对对象所做的一组动作。事件处理机制中,涉及到三个对象:事件本身、事件的来源、事件处理器。事件是事件类的一个对象,事件类的根类是java.EventObject…通常所用到的事件类在java.awt.event包中。事件对象的属性包含了与事件相关信息。如可以使用EventObject类中的getSource()方法中获得事件源。ActionEvent事件类说明:通常按下按钮,双击列表项或选中一个菜单项时,就会生成此事件。AdjustmentEvent事件类说明:操纵滚动条时会生成此事件。ComponentEvent事件类说明:当一个组件移动、隐藏、调整大小或成为可见会生成此事件。ItemEvent事件类说明:单击复选框或列表项时,或者当一个选择框或一个可选菜单的项被选择或取消时生成此事件。FocusEvent事件类说明:组件获得或失去键盘焦点时会发生此事件。
事件源是产生事件的对象。一个事件源可能会生成不同类型的事件。事件监听器是在一个事件发生时被通知的对象,也称为事件处理器。
eg
package tux;

import javax.swing.;
import java.awt.
;

public class Login extends JFrame{
private JLabel lname;
private JLabel lpass;
private JTextField tname;
private JTextField tpass;
private JButton login;

  private void init() {
	  lname=new JLabel("用户名");
	  lpass=new JLabel("密码");
	  tname=new JTextField(14);
	  tpass=new JTextField(14); 
	  login=new JButton("登录");
	
	  
	  this.setLayout(new FlowLayout(FlowLayout.CENTER));
	  this.add(lname);
	  this.add(tname);
	  this.add(lpass);
	  this.add(tpass);
	  this.add(login);
	  
	  this.setResizable(false);
	  this.setTitle("qq登录");
	  this.setSize(255,125);
	  this.setLocation(400, 400);
	  this.setVisible(true);
	  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	  
  }
  public Login() {
	  init();
  }

}

package tux;

public class Text {
public static void main(String[] arge) {
new Login();
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值