请问现在在 Windows 下开发桌面应用都用什么界面库? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
ch3rub1m
V2EX    程序员

请问现在在 Windows 下开发桌面应用都用什么界面库?

  •  
  •   ch3rub1m 2015-08-04 00:12:33 +08:00 7640 次点击
    这是一个创建于 3723 天前的主题,其中的信息可能已经有所发展或是发生改变。
    手头有一个朋友委托开发的管理系统,属于有时间就做做的那种。
    感觉桌面应用开发的市场现在非常冷清,各位大牛各抒己见吧。

    以前用过QT,这个应该勉强算是主流吧?
    WxWidgets怎么样?GTK+呢?现在感觉社区都不活跃了,WxWidgets的官方Wiki都好久没更新过了。

    今天尝试了下Node-Webkit,虽然觉得这也许会是未来的主流,但是目前按本人的水平,感觉各种开发工具还是很不完善。

    求各位大神支招啊,本人是苹果技术栈的,希望可以是双平台通用的。
    48 条回复    2015-08-09 22:53:05 +08:00
    cdfmr
        1
    cdfmr  
       2015-08-04 00:19:59 +08:00
    需要跨平台的话,还是选Qt吧。
    msg7086
        2
    msg7086  
       2015-08-04 00:22:16 +08:00
    跨平台?这是需求还是拍脑袋想出来的。
    跨平台桌面应用不如内嵌浏览器做成B/S了。
    ipconfiger
        3
    ipconfiger  
       2015-08-04 00:24:00 +08:00
    试过nodewebkit 一般般好用吧
    ch3rub1m
        4
    ch3rub1m  
    OP
       2015-08-04 00:28:59 +08:00
    @msg7086 拍脑袋的,因为自己也想在Mac下开发桌面应用,又懒得去熟悉Cocoa的桌面部分
    ch3rub1m
        5
    ch3rub1m  
    OP
       2015-08-04 00:29:17 +08:00
    @cdfmr 我也是这么想的 感觉只能Qt了
    ch3rub1m
        6
    ch3rub1m  
    OP
       2015-08-04 00:29:37 +08:00
    @ipconfiger node很方便,但是估计还要发展一段时间吧
    hjc4869
        7
    hjc4869  
       2015-08-04 00:31:16 +08:00 via iPhone
    不要试图UI跨平台,会严重降低各个平台的体验。当然如果只是想应付一下当我没说。
    qianlifeng
        8
    qianlifeng  
       2015-08-04 00:37:12 +08:00
    如果只是在WINDOWS下的话,可以用WPF或WINFORM,来的快
    em70
        9
    em70  
       2015-08-04 00:47:15 +08:00
    delphi的firemonkey,拖拽开发,一个工程可编译win,mac,ios,android四种平台的APP
    ch3rub1m
        10
    ch3rub1m  
    OP
       2015-08-04 00:59:42 +08:00
    @hjc4869 有道理啊 那Windows下现在用什么 MFC还好使吗
    ch3rub1m
        11
    ch3rub1m  
    OP
       2015-08-04 01:00:18 +08:00
    @em70 这个有点啊……话说我入门语言就是PASCAL 想起了高中做IO的日子 好怀念
    ch3rub1m
        12
    ch3rub1m  
    OP
       2015-08-04 01:00:35 +08:00
    @qianlifeng 我去搜搜 都没听过
    ch3rub1m
        13
    ch3rub1m  
    OP
       2015-08-04 01:04:00 +08:00
    @qianlifeng 都是C#的东西 QAQ本人虽然立志做全栈 但是只想熟悉苹果栈 人的一生有限啊
    这两个东西只学皮毛配合C++可以搞出东西吗
    ncwhale
        14
    ncwhale  
       2015-08-04 01:41:25 +08:00
    node-webkit 吧喵~其它的跨平台会跨的你哭喵~

    比如OpenGL、Ogre3D、CEGUI、DSL、Unity(等等……
    cszhiyue
        15
    cszhiyue  
       2015-08-04 01:48:45 +08:00
    node-webkit大法好
    jiayao321
        16
    jiayao321  
       2015-08-04 01:56:18 +08:00
    node-weibkit 和 Electron有什么区别
    zeal7s
        17
    zeal7s  
       2015-08-04 03:19:19 +08:00
    楼主可以试一试wxPython,dropbox就是用这个框架开发的
    lm902
        18
    lm902  
       2015-08-04 04:20:46 +08:00
    @ch3rub1m WPF不只是C#,也可以用VB和C++或者任何兼容.NET的语言例如IronPython配合XAML写
    csslayer
        19
    csslayer  
       2015-08-04 05:20:17 +08:00
    @zeal7s dropbox 已转投 Qt 5
    lingo233
        20
    lingo233  
       2015-08-04 06:34:44 +08:00
    node-webkit启动速度那叫酸爽,所以平台都哭了T_T。还是用WPF,WINFORM。
    valkjsaaa
        21
    valkjsaaa  
       2015-08-04 06:40:45 +08:00
    @lm902 然而感觉 WPF + C++ 是坑...
    loading
        22
    loading  
       2015-08-04 06:40:47 +08:00 via Android
    个人建议 aauto + htmlayout,先把工作完成!
    wwqgtxx
        23
    wwqgtxx  
       2015-08-04 07:40:50 +08:00 via Android
    要不然b/s封装一下,要不然还是老老实实winform/wpf,别的都是坑
    RqPS6rhmP3Nyn3Tm
        24
    RqPS6rhmP3Nyn3Tm  
       2015-08-04 07:57:28 +08:00 via iPad
    Gtk 那代码写起来跟屎一样……乖乖上 Qt 吧
    ren2881971
        25
    ren2881971  
       2015-08-04 08:49:59 +08:00
    直接用qt吧 省的折腾。。
    visonme
        26
    visonme  
       2015-08-04 08:52:52 +08:00
    既然是桌面应用那就用QT QML来做吧,本身就是专注在UI这块的
    coolcfan
        27
    coolcfan  
       2015-08-04 08:58:16 +08:00   2
    看到这么多人推荐基于Nodejs的桌面开发方案,作为用户不禁感到未来一片黑暗。
    dreamtrail
        28
    dreamtrail  
       2015-08-04 09:13:07 +08:00
    不喜欢跨平台的东西,QT用的我想吐
    loqixh
        29
    loqixh  
       2015-08-04 09:29:43 +08:00
    @coolcfan v2前端太多,会选他们熟悉的。。。。事实上开发么,轮不到他们说话,现在桌面开发方案基本是c++的directui,winform, wpf也有一部分
    initialdp
        30
    initialdp  
       2015-08-04 09:50:35 +08:00
    您提到的这些全是跨平台方案。如果限定在windows平台,就不需要考虑跨平台的问题,这种情况下,现有的delphi,vb甚至powerbuilder才是最佳解决方案。
    wshcdr
        31
    wshcdr  
       2015-08-04 09:55:55 +08:00
    MFC啊,WinForm, delphi这种建议别考虑
    SmiteChow
        32
    SmiteChow  
       2015-08-04 10:31:12 +08:00
    建议node-webkit
    abscon
        33
    abscon  
       2015-08-04 10:43:59 +08:00
    @initialdp 限定在windows平台的话,为何不用 WPF C#
    ioth
        34
    ioth  
       2015-08-04 10:44:55 +08:00
    .net开源了。
    用delphi吧。
    initialdp
        35
    initialdp  
       2015-08-04 12:00:33 +08:00
    @abscon 我理解lz说的管理系统是企业管理系统(例如MIS,或者ERP之类的),如果不是的话,请忽略下面的内容。

    MIS/ERP系统有些显著的特点,就是报表、图表、数据分析等非常多,Delphi/VB/PB在这方面的控件或者库都非常多,有很多积累。如果仅仅是GUI,WPF或者C#当然也没有问题。
    21grams
        36
    21grams  
       2015-08-04 12:28:28 +08:00
    @em70 delphi还活着?
    jjx
        37
    jjx  
       2015-08-04 12:57:30 +08:00
    python.net + windows forms , 我以前的一个方案
    em70
        38
    em70  
       2015-08-04 12:59:01 +08:00
    @21grams 不但活着,现在每年发布2个版本,移动APP用delphi开发太效率了,跟开发win程序没区别,android和ios一个人可以包办,只需要维护一个代码.
    YufunHe
        39
    YufunHe  
       2015-08-04 15:12:13 +08:00
    底层C++跨平台,UI层还是用平台自己的吧 windows WPF,mac Cocoa
    lm902
        40
    lm902  
       2015-08-04 17:21:57 +08:00
    @YufunHe 其实感觉Java的UI和平台挺配的 就是感觉缺了点什么
    w88975
        41
    w88975  
       2015-08-04 18:27:36 +08:00
    node-webkit打包出来会不会太大了?
    21grams
        42
    21grams  
       2015-08-04 20:53:40 +08:00
    就用java呗
    qianlifeng
        43
    qianlifeng  
       2015-08-05 00:14:33 +08:00
    @em70 有这么神奇?去看看
    Ahri
        44
    Ahri  
       2015-08-05 00:57:22 +08:00 via iPhone
    用 Electron 啊,跟做前端似的。成功案例:Atom Slack。
    aivier
        45
    aivier  
       2015-08-05 14:14:24 +08:00
    为什么不选C# WinForm?
    sammo
        46
    sammo  
       2015-08-09 08:52:21 +08:00
    @cdfmr 请教如何看出一个 Mac APP 是用 QT 写的界面?
    像 myBase 这个软件 (有 Mac / Win / Linux 版本,Mac 版蛮好用的 ),是用 QT 写的吗?
    cdfmr
        47
    cdfmr  
       2015-08-09 12:38:08 +08:00
    @sammo Qt的免费版本只允许动态链接,所以可查看App的Frameworks目录下有无Qt的框架判定。当然,如果作者用的是商业授权或者不遵守协议进行静态链接那就是另一码事了。另外,相对于原生UI,Qt有些细节还是不同的,比如工具栏,比如原生App很少使用Tab Control(不知道是不是因为比较丑),但不否定个别追求细节的作者愿意花费力气整得跟原生的一样。
    sammo
        48
    sammo  
       2015-08-09 22:53:05 +08:00
    QtCore.framework
    QtGui.framework
    QtNetwork.framework
    QtScript.framework
    QtWebKit.framework
    QtXml.framework
    了然
    @cdfmr 多谢
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2753 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 15:09 PVG 23:09 LAX 08:09 JFK 11:09
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86