# AXmlSwing **Repository Path**: sunshine_forever/AXmlSwing ## Basic Information - **Project Name**: AXmlSwing - **Description**: 使用xml简化swing开发 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 18 - **Created**: 2015-04-12 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AXmlSwing 使用xml简化swing开发 ###文档 请查看[wiki](http://git.oschina.net/dipoo/AXmlSwing/wikis/home) ###demo 请查看[AXmlSwingDemo](http://git.oschina.net/dipoo/AXmlSwingDemo) ###如何使用 #####1、配置文件src/axmlswing.cfg.xml ```xml demo.listeners 虾片神器 下载地址不能为空 blue 10 ``` #####2、布局文件demo.xml ```xml ``` ####3、事件处理DownBtnListener.java ```java package demo.listeners; @EventAnnotation("downBtn")//标明id=downBtn控件事件监听器 //所有控件的事件监听器都要继承AbstractListener类并改写其中的方法 public class DownBtnListener extends AbstractListener{ public void mouseClicked(MouseEvent e) { JButton btn = (JButton) e.getSource(); JFrame mainWindow = (JFrame) ComponentManager.getMainWindow(); JOptionPane.showMessageDialog(null, "你好, 主窗口名称为:" + mainWindow.getTitle() + ",按钮text:" + btn.getText()); JTextField field=(JTextField)ComponentManager.getComponent("urlField"); JOptionPane.showMessageDialog(null, field.getText()); } } ``` #####4、加载布局文件demo.java ```java package demo; public class Demo { public static void main(String[] args) throws Exception { //加载布局文件 GuiXmlLoader.load("demo.xml"); } } ``` #####5、效果图 ![demo](https://raw.githubusercontent.com/dipoo/AXmlSwing/master/demo.png) ###依赖包 * dom4j-1.6.1.jar * jaxen-1.1.1.jar * beautyeye_lnf.jar(皮肤包,可选)