借助WindowBuilder插件轻松完成JAVA图形用户界面编辑
来源:互联网 发布:java中九九乘法表算法 编辑:程序博客网 时间:2024/06/16 21:08
如果以纯代码的形式进行JAVA的图形用户界面编辑,将是一件非常痛苦的事,博主在学习过程中发现了JAVA GUI编辑神器——WindowBuilder,提供可视化的编辑界面,控件的添加、排版只需使用鼠标进行拖拽即可。
安装
首先进入WindowBuilder网站http://www.eclipse.org/windowbuilder/,接着点击Download
选择对应的Eclipse版本,博主的是4.7(Oxygen),点击link,复制地址栏内的网址
打开Eclipse,点击顶栏Help内的Install New Software,将网址拷贝到Work with中并回车,勾选所有组件,一路点击Next即可进行安装。
安装完成后,点击Eclipse顶栏的File,选择New中的other,在弹出的新建框内若有WindowBuilder选项则证明安装成功。
简单示例
博主接下来为大家实现一个Swing窗体应用程序(网络程序设计实验教程(Java语言)),实现的功能是:1. 将字符序列文本框中的字符串以对应的编码方案进行编码,并存储到字节数组中,最后将字节数组中的字节以十六进制的方式表示;2. 将字符序列文本框中的十六进制方式表示的字节数组以对应的编码方案进行解码,并将解码后得到的字符串显示出来。
新建一个名为TestEncoding的Java项目,在项目中用WindowBuilder创建一个Application Window应用程序,命名为AppMain,再将主窗体重命名为frmMain,窗体标题改为“编码解码示例”。
拖动工具箱中的控件进行排版,(将getContentPane()属性中的layout设置为Absolute layout,可将控件随意拖拽到你指定的位置)设置相应控件属性如下表所示。
编码功能的实现
双击按钮btnGBKEncode,在函数内添加如下代码:
String str = tfChars.getText();Charset cs = Charset.forName("GBK");ByteBuffer buffer = cs.encode(str);String hexStr = "";while(buffer.remaining()>0) { hexStr += Integer.toHexString(buffer.get()&0xFF).toUpperCase()+" ";}tfBytesGBK.setText(hexStr);
双击按钮btnUTF8Encode,在函数内添加如下代码:
String str = tfChars.getText();String hexStr = "";try { byte[] bytes = str.getBytes("UTF-8"); for(int i=0;i<bytes.length;i++) { hexStr += Integer.toHexString(bytes[i]&0xFF).toUpperCase()+" "; }} catch (UnsupportedEncodingException e) { e.printStackTrace();}finally { tfBytesUTF8.setText(hexStr);}
解码功能的实现
双击按钮btnGBKDecode,添加如下代码:
String hexStr = tfBytes.getText();String[] strs = hexStr.split(" ");byte[] array = new byte[strs.length];for(int i=0;i<strs.length;i++) { array[i] = (byte)(Integer.valueOf(strs[i],16).intValue());}Charset cs = Charset.forName("GBK");CharBuffer buffer = cs.decode(ByteBuffer.wrap(array));tfCharsGBK.setText(buffer.toString());
双击按钮btnUTF8Decode,添加如下代码:
String hexStr = tfBytes.getText();String[] strs = hexStr.split(" ");byte[] bytes = new byte[strs.length];for(int i=0;i<strs.length;i++) { bytes[i] = (byte)(Integer.valueOf(strs[i],16).intValue());}String str = "";try { str = new String(bytes,"UTF-8");} catch (UnsupportedEncodingException e1) { e1.printStackTrace();}finally { tfCharsUTF8.setText(str);}
最终效果如下:
由此可见在网络传输过程中解码方式如果错误,得到的结果也就面目全非了。
这篇博客更多是引路用的,更多内容请上官网查看教程。
- 借助WindowBuilder插件轻松完成JAVA图形用户界面编辑
- Eclipse 安装 windowBuilder(图形化插件)
- Java图形用户界面设计
- Java 图形用户界面设计
- Java图形用户界面设计
- Java图形用户界面设计
- Java 图形用户界面设计
- Java图形用户界面设计
- java GUI图形用户界面
- java----GUI图形用户界面
- java图形用户界面--窗口
- Java 图形用户界面设计
- JAVA图形用户界面设计
- Java图形用户界面设计
- Java图形用户界面
- Java图形用户界面设计
- Java图形用户界面设计
- java图形用户界面3
- Day7-24.Auto increment and decrement
- 在js中怎样获得checkbox里选中的多个值
- discuzX3.2部分DIY模块无法实现伪静态的解决方法
- 怎样才能保证服务器数据的安全?
- 使用数组简单实现的阻塞队列
- 借助WindowBuilder插件轻松完成JAVA图形用户界面编辑
- consul集群安装以及服务的注册和发现
- eclipse项目文件出错
- UIView的autoresizingMask属性
- 使用Saltstack实现Openstack管理
- 有意思的组合判断
- 去哪儿笔试:身份证分组
- Java下载文件的方式及支持中文名称
- spring与hibernate的整合