Java 19

滚动组件
AWT中的滚动组件包括Scrollbar(滚动条)和滚动面板(ScrollPane)两种。
 
滚动条ScrollBar:在指定的取值范围内快速选取某一值的功能。
构造方法
public Scrollbar(int orientation,int value,int visible,int minimum,int maximum)
参数orientation的取值:Scrollbar.HORIZONTAL表示水平滚动条;Scrollbar.VERTICAL表示垂直滚动条。

常用方法
public void setValue(int value);
public int getValue();
public void setBlockIncrement(int value);
public void setUnitIncrement(int value);
触发事件
当用户通过鼠标操作(比如拖动滑块位置)来改变滚动条中滑块的位置时,会触发AdjustmentEvent类型事件,对应的监听接口为:AdjustmentListener,事件处理方法:
public void adjustmentValueChanged( AdjustmentEvent e);

滚动条注册或删除事件监听的方法:
public void addAdjustmentListener(AdjustmentListener l);
public void removeAdjustmentListener(AdjustmentListener l);

菜单组件
菜单组件包括包括MenuBar(菜单条)、Menu(菜单)、MenuItem(菜单项)、CheckboxMenuItem(带复选框的菜单项)和PopupMenu(弹出式菜单)。

菜单条MenuBar
MenuBar mb=new MenuBar();
frame.setMenuBar(mb);
菜单Menu
Menu mnFile=new Menu(“文件”);
Menu mnEdit=new Menu();
mb.add(mnFile);
mb.add(mnEdit);

菜单项MenuItem
public MenuItem();
public MenuItem(String label);
public MenuItem(String label,MenuShortcut s);参数s用于设置菜单项的快捷键,是MenuShortcut类的对象,该类的构造函数为MenuShortcut(int key)  参数key取KeyEvent类中的静态常量

MenuItem miOpen=new MenuItem(“打开”);
MenuShortcut msc=new MenuShortcut(KeyEvent.VK_E);
MenuItem miExit=new MenuItem(“退出”,msc);
mnFile.add(miOpen);
mnFile.addSeparator();
mnFile.add(miExit);
菜单项触发的事件:ActionEvent

二级菜单和复选菜单项
二级菜单:菜单中嵌套菜单
复选菜单项(CheckboxMenuItem)
注意:用鼠标单击复选菜单项引发的事件是ItemEvent,因此要具体实现的监听接口为ItemListener。

弹出式菜单(PopupMenu)
构造方法
public  PopupMenu();
例如:PopupMenu  popM=new PopupMenu();
MenuItem miOpen=new MenuItem(“打开”);
MenuItem miSave=new MenuItem(“保存”);
popM.add(miOpen);  
popM.add(miSave);
由于弹出式菜单默认是不可见的,通常将它附着在某个组件或容器上,然后对该组件或容器增加鼠标监听。例如:txt.add(popM);

显示弹出式菜单
public void show(Component origin,int x,int y);
鼠标事件类中的方法isPopupTrigger()用于返回鼠标事件是否为该组件的弹出菜单触发的事件。

对话框
对话框组件Dialog:界面效果和Frame类似,是一个拥有边框和最大化、最小化、关闭按钮的顶级窗口,其中也可以添加其他的组件或容器,但不同之处在于对话框组件主要用于接收用户某种形式的简单输入,起到“确认”操作或“警告/提示”的作用。

需注意:
Dialog组件的默认布局管理器是BorderLayout类型,且默认初始化为不可见的,需要使用setVisible(true)方法使之显示出来
Dialog组件虽然是顶级窗口,但必须依赖一个其他的窗口而不能单独存在,所依赖的窗口称为对话框的所有者(Owner),通常是Frame或其他Dialog。
当其所有者窗口最小化时,Dialog也会自动隐藏为对用户不可见,当所有者窗口被还原时,Dialog重新变为可见。

通过建立Dialog的子类来建立一个对话框类,然后这个类的一个实例,即该类的一个对象,就是一个对话框。
构造方法
public Dialod(Frame f(对话框的所有者),String s(对话框标题文本));
public Dialod(Frame f,String s,boolean b(有模式或无模式对话框  默认为无模式的));

对话框分为无模式对话框(Modeless Dialog)和有模式对话框(Modal Dialog)两种:
有模式对话框将阻断输入到其所在应用程序中其他所有窗体的内容,例如MS Word中的文件对话框。
无模式对话框显示与否都不影响所在应用程序其他窗体的操作,通常用于提供非必须的辅助性功能,如Word的“查找/替换”对话框。

常用方法
public String getTitle();
public void setTitle();
public void setModal(Boolean model);
public void setSize(int width,int height);
public void setVisible(boolean b);

文件对话框FileDialog
文件对话框java.awt.FileDialog,继承了Dialog类,但属于有模式对话框,用于在打开和保存文件时指定文件的路径和文件名。
构造方法
public FileDialog(Frame f,String s, int mode(指定对话框的工作方式:“打开”或“保存”,取值:FileDialog.LOAD、FileDialog.SAVE));

常用方法
public String getDirectory();返回选定文件的所属目录
public String getFile();返回选定文件名

需注意,文件对话框仅仅提供了一个文件操作的界面,要真正实现对文件的操作应使用文件的输入输出流(方法loadFile()、saveFile()和saveFileAs()中都用到了文件的输入/输出流的操作)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值