感觉java的GUI好累赘啊,随便写个条条框框都要耗费无数代码,而且我感觉这些代码很杂乱。要是用java的GUI写一个复杂点的界面那还不爆炸了啊!
所以我想问问,可不可以像画画一样在一个窗口里面把界面画出来,然后用java写上对应的响应代码。

解决方案 »

  1.   

    当然可以啊 myeclipse 里面有swing插件
      

  2.   

    myeclipse 里面有swing插件
      

  3.   

    javaFX
      

  4.   

    差别不再语言本身,是开发商策略问题。sun在设计gui之初就没想让swing成为主流,主要在于服务端。
    所以主流IDE就没有称心如意的可视化编辑器支持。
    但如果单说gui效果,高手做出来的东西易用性绝不比C#的winform差。而微软为了做到人人可用,本身就有商业化的visual studio可视化IDE捆绑支持,winform自然就容易普及了。当然这只是原因之一,个人想法,仅供参考。myeclipse中有现成的可视化插件,好久不用忘了,请自行百度。
      

  5.   

    感觉Java写GUI和C#写winform有点类似,不过人家VS自带拖控件,代码生成器直接生成了,不过总体来说都是用控件的函数去配置GUI,既然是配置的话还是写在配置文件里面显然更合适,加之调用框架的性能问题,所以无论swing还是winform,做太复杂的界面都是不合适的
      

  6.   

    用javafx, 带有javafx scene builder.
      

  7.   


    首先,swing和winform恰恰是为做复杂界面而生的,因为底层就是面向对象的语言在支撑,做大型复杂的页面html,js之流根本比不了。只是由于胖客户端的安装问题普及不如web而已。
    说到性能,更是web不能比的了,答案上面已说,胖客户端运行环境直接在客户端,根本不存在性能问题。可能有人会说现在web页面多炫啊,不比你复杂?首先漂亮的界面不等于复杂的界面,很多年前我接触过的电力监控软件用纯swing做的,界面上各种互动的细微编辑、互动操作(尤其是各种图表)用web做比如百度的echarts是难以想象的。
    web界面漂亮是因为css的发展和瘦客户端的普及,swing有很多皮肤插件,做出来效果也很炫。只不过普及率太低,慢慢就没有这些支持了而已。当然,如果你说不合适是指swing的开发效率低,这个我承认,毕竟发展太缓慢,支持的框架太少,这是没办法的事情。
      

  8.   


    Yes
    本质上 C# WinForm 的控制也是通过调用一串的 new XXX(), setXXX 之类的方法支持可视化的拖拽的
      

  9.   

    有道理,不过做复杂动画界面的一般使用WPF,但是由于.NET framework框架太大,做起来应该没VC做性能好