Java开发笔记(一百一十八)AWT按钮
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java开发笔记(一百一十八)AWT按钮,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2907字,纯文字阅读大概需要5分钟。
内容图文
![Java开发笔记(一百一十八)AWT按钮](/upload/InfoBanner/zyjiaocheng/781/eb8ce6f551844ed4b1b971dfebd4e98f.jpg)
前面介绍了如何通过AWT显示程序的窗口界面,那么要怎样在该窗口上面添加丰富多样的控件呢?注意Frame类是个窗口工具,它由窗楣(标题栏)与窗体(窗口主界面)两部分组成,故而Frame类只对整个窗口统筹规划,本身并不能直接添加各类控件。实际的控件管理操作交给了专门的Panel面板工具,由面板接管窗口主界面,在面板上添加和删除控件,Frame对象只需调用add方法把面板添加到窗口即可。
接下来以常见的按钮控件为例,演示一下如何在面板上添加按钮、进而在窗口界面显示按钮的过程。按钮控件名叫Button,按钮上的文字既能在构造方法中传入,也能通过setLabel方法来设置。不过按钮的大小无法通过setSize方法设置,必须调用setPreferredSize方法才行。若要在窗口上显示一个按钮,则需在原来的窗口代码中补充如下代码片段:
Panel panel = new Panel(); // 创建一个面板 Button button = new Button("点我"); // 创建一个按钮 // 设置空间大小要用setPreferredSize,因为setSize不管用 button.setPreferredSize(new Dimension(200, 30)); // 设置按钮的推荐宽高 panel.add(button); // 在面板上添加按钮 frame.add(panel); // 在窗口上添加面板
运行添加了按钮控件的窗口代码,屏幕中央弹出了如下图所示的小窗。
有的朋友可能会发现,按钮文字并未显示正确的汉字,而是变成乱码了。这是因为Eclipse配置了UTF8字符编码,而操作系统默认的汉字编码是GBK,两边的字符编码标准不一致导致了乱码。倘若Eclipse的工作空间配置为GBK编码,则不会出现汉字乱码的情况。当然,即使Eclipse配置成UTF8编码,给程序加入运行参数“-Dfile.encoding=gbk”,这样运行时也能正常显示汉字。具体步骤说明如下:右击测试用的代码文件,在右键菜单中依次选择“Run As”——“Run Configurations...”,此时会弹出如下图所示的配置界面。
单击该界面右边的Arguments选项卡,在下面的VM arguments输入框中填入运行参数“-Dfile.encoding=gbk”,然后单击界面下方的Run按钮,运行窗口的按钮上就会正确显示汉字了。
如同窗口右上角的叉号按钮那样,面板上的按钮也允许由程序员定制单击动作的处理,调用按钮对象的addActionListener方法表示给它注册一个点击监听器,而按钮的单击事件会触发监听器的actionPerformed方法,有需要执行的代码放进该方法就好了。下面是给按钮添加单击事件的代码例子:
button.addActionListener(new ActionListener() { // 给按钮注册一个点击监听器 @Override public void actionPerformed(ActionEvent e) { // 发生了单击事件 button.setLabel(getNowTime() + " 点击了按钮"); // 设置按钮的文本 } });
以上代码里的getNowTime方法主要用来获取当前时间,方便观察每次单击动作的发生时刻,该方法的实现代码示例如下:
// 获取当前的时间字符串 public static String getNowTime() { // 创建一个日期格式化的工具 SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); // 将当前时间按照指定格式输出格式化后的时间字符串 return sdf.format(new Date()); }
运行添加了单击事件的按钮测试代码,接着单击窗口上的按钮控件,单击之后的窗口界面如下图所示:
看到按钮上的文字发生了变化,可见刚才注册的点击监听器果然奏效了。
最后总结一下Button工具提供的几个方法,它们的简要说明见下:
setLabel:设置按钮上的文字标签。
setPreferredSize:设置按钮的推荐宽高。
addActionListener:给按钮注册一个点击监听器。
setEnabled:设置按钮是否可用。true表示启用按钮,false表示禁用按钮。
更多Java技术文章参见《Java开发笔记(序)章节目录》
内容总结
以上是互联网集市为您收集整理的Java开发笔记(一百一十八)AWT按钮全部内容,希望文章能够帮你解决Java开发笔记(一百一十八)AWT按钮所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。