搜尋

首頁  >  問答  >  主體

C++用QT做界面能做出迅雷这样复杂的界面吗?

想开发个桌面软件,找了一圈,大部分都推荐使用QT做界面。然而,学了一个月,发现不知道是我能力不够还是qt功能有效,比如我想做类似迅雷那样复杂的界面,却发现qt提供的控件实在有限,想做复杂点个性化的界面无从下手。网上搜了一圈,也有html+css+js写界面的,如果能这样那是极好的,学习成本会减少很多。而且web写界面实在太得心应手了。目前有两个候选吧,一个htmlayout和lomox,lomox这个,好像推出几年了,官网啥东西都没有,github零星的人气,什么文档都没完善,怕是遇到问题无从下手,所以有点顾虑,现在唯一的指望就是htmllayout了。

感觉c++开发个软件,做个界面太麻烦了。有啥好办法吗

PHP中文网PHP中文网2805 天前634

全部回覆(4)我來回復

  • 巴扎黑

    巴扎黑2017-04-17 13:48:17

    qt當然可以的
    你要是會web的話electron也是很不錯的選擇

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-17 13:48:17

    qt裡面自帶webkit的,可以嵌入html。

    技術好的話,也可以用內嵌的opengl玩自繪。

    也可以直接貼圖來做。

    回覆
    0
  • 迷茫

    迷茫2017-04-17 13:48:17

    參考這個答案: https://www.zhihu.com/question/39607624

    還有這個答案 https://www.zhihu.com/question/23717444 中提到的Qt模仿360安全衛士。

    回覆
    0
  • 天蓬老师

    天蓬老师2017-04-17 13:48:17

    如果你要求基於C++做,那麼Qt是不二之選。
    1) 跨平台,Linux/windows/Mac/行動版改動很小,就能使得一份程式碼能跑在這麼多平台上,這已經很厲害了吧
    2) Qt做介面,熟手推薦手寫程式碼,生手推薦用QtDesigner拖曳控制項的方式直接拖曳出一個介面原型,加上點Qt自訂的Stylesheet(語法類似CSS),加上幾個signal-slot,基本上能用的一個工具就出來了,這個效率已經非常高了。
    3) Qt為了吸引到一部分有腳本語言開發經驗的用戶,採用了QML做佈局,這個已經大大簡化了開發流程。範例可在Qt的官方examples裡找到,下面這個是基於QML寫的

    4) 版面方面,Qt是很早就開始支援layout的,這​​比你所了解到的HTML的layout只強不弱。
    5) 不建議使用Qt的Webkit加html做開發,原因
    [1] QT的webkit相容性不好,跟瀏覽器的webkit相比還有差距
    [2] QT社群也不建議使用這種方式

    6) 你如果對樣式有強烈的定制要求,可以採用Qt的QGLWidget自己繪製複雜的界面,但據我所知,做出像迅雷這樣的效果,基本上不需要自己定制控件的
    至於使用Qt的地方,據我所知,目前很多商業的桌面軟體都在用Qt,比如Oracle的VirtualBox,阿里雲的雲盾

    回覆
    0
  • 取消回覆