利用JavaFX创建一个可以订阅发布的MQTT客户端桌面程序

      利用JavaFX我们可以创建出像Swing那样的桌面程序,具体的关于JavaFX的介绍可以百度一下,我这里主要是介绍利用JavaFX创建一个桌面程序来链接MQTT服务端,MQTT服务端选用的是apache-apollo,可以到官网http://activemq.apache.org/apollo/download.html下载,安装过程可以参考http://jingyan.baidu.com/article/d45ad148b8efb769542b8066.html?st=2&net_type=&bd_page_type=1&os=0&rst=&word=%E6%80%8E%E6%A0%B7%E7%A7%9F%E6%9C%8D%E5%8A%A1%E5%99%A8,选用的MQTT的框架是paho,下载地址是http://www.eclipse.org/paho,在创建JavaFX桌面程序的时候我们可以通过拖动的方式来可视化的创建桌面客户端,利用的工具是SceneBuilder,其下载地址是http://gluonhq.com/products/scene-builder/,因为我的开发系统是windows,所以选择下载的是windows Installer,反正根据自己的需求来。

     接下来我们就可以创建JavaFX项目了,开发工具我选用的是IntelliJ Idea,我们可以在创建项目的时候直接选择创建JavaFX项目,为了打包方便,我在创建完成JavaFX项目后就直接把项目改变成了支持maven的项目,可以通过在JavaFX项目上点击右键选择"Add Frameworks Support"--->"Maven"来转换为maven支撑的项目,完成以上步骤后就可以通过SceneBuilder工具来画界面图了,我画好后的界面如下所示:



      针对每一个标签和按钮,在定义完在fxml文件中的fx:id后必须在controller里面定义其对应的变量和方法且名字和fx:id要一样才能生效,不然启动的时候报错,具体的代码不在文章里面分析了,大家可以参考我的代码,可以在这里下载rar包或者到我的git上面下载https://github.com/422518490/mqtt-client

     更新如下:

    git上面更新了客户端的按钮和table的位置显示随着大小变化的支持以及固定两边大小不能拖动。

     

猜你喜欢

转载自357029540.iteye.com/blog/2404155