借助WindowBuilder插件轻松完成JAVA图形用户界面编辑
2017-08-17 15:03
267 查看
如果以纯代码的形式进行JAVA的图形用户界面编辑,将是一件非常痛苦的事,博主在学习过程中发现了JAVA GUI编辑神器——WindowBuilder,提供可视化的编辑界面,控件的添加、排版只需使用鼠标进行拖拽即可。
选择对应的Eclipse版本,博主的是4.7(Oxygen),点击link,复制地址栏内的网址
打开Eclipse,点击顶栏Help内的Install New Software,将网址拷贝到Work with中并回车,勾选所有组件,一路点击Next即可进行安装。
安装完成后,点击Eclipse顶栏的File,选择New中的other,在弹出的新建框内若有WindowBuilder选项则证明安装成功。
新建一个名为TestEncoding的Java项目,在项目中用WindowBuilder创建一个Application Window应用程序,命名为AppMain,再将主窗体重命名为frmMain,窗体标题改为“编码解码示例”。
拖动工具箱中的控件进行排版,(将getContentPane()属性中的layout设置为Absolute layout,可将控件随意拖拽到你指定的位置)设置相应控件属性如下表所示。
双击按钮btnUTF8Encode,在函数内添加如下代码:
双击按钮btnUTF8Decode,添加如下代码:
最终效果如下:
由此可见在网络传输过程中解码方式如果错误,得到的结果也就面目全非了。
这篇博客更多是引路用的,更多内容请上官网查看教程。
安装
首先进入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,可将控件随意拖拽到你指定的位置)设置相应控件属性如下表所示。
控件 | 名称 | 属性 | 值 |
---|---|---|---|
按钮JButton | btnGBKEncode | Text | GBK编码结果 |
按钮JButton | btnUTF8Encode | Text | UTF-8编码结果 |
按钮JButton | btnGBKDncode | Text | GBK解码结果 |
按钮JButton | btnUTF8Dncode | Text | UTF-8解码结果 |
文本框JTextField | tfChars | ||
文本框JTextField | tfBytesGBK | Enabled | False |
文本框JTextField | tfBytesUTF8 | Enabled | False |
文本框JTextField | tfBytes | ||
文本框JTextField | tfCharsGBK | Enabled | False |
文本框JTextField | tfCharsUTF8 | Enabled | False |
编码功能的实现
双击按钮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); }
最终效果如下:
由此可见在网络传输过程中解码方式如果错误,得到的结果也就面目全非了。
这篇博客更多是引路用的,更多内容请上官网查看教程。
相关文章推荐
- 使用 Smooks Eclipse 插件轻松完成 XML 到 Java 的数据转换
- 使用 Smooks Eclipse 插件轻松完成 XML 到 Java 的数据转换
- 使用 Smooks Eclipse 插件轻松完成 XML 到 Java 的数据转换
- Java下的可视化开发工具使用 WindowBuilder Pro
- 编写Java GUI的好工具WindowBuilder Pro[包含Swt-Designer和Swing-Designer]
- java入门第一步之完成jdk的安装(window)
- ECLIPSE中反编译插件JAD的配置安装,轻松查看JAVA源代码
- 加速Eclipse编辑的功能(C++/Java)——自动完成
- 开源重磅,java内容管理系统CMS,点击即可编辑,保存,轻松构建自己的网站
- 借助webuploader插件完成ajax异步上传图片(多张以及单张)
- WindowBuilder插件安装及JFrame
- 借助开源工具高效完成Java应用的运行分析
- WindowBuilder Pro Install For Java GUI
- Eclipse WindowBuilder插件在线安装
- Java调用本机程序完成打开网页、发送邮件和编辑文件
- Eclipse WindowBuilder 插件使用资料整理
- 借助开源工具高效完成Java应用的运行分析
- Java 插件中获得当前编辑文本的绝对路径
- eclipse使用Rinzo插件在编辑xml时能自动提示Java类
- 借助开源工具高效完成Java应用的运行分析