想开发个桌面软件,找了一圈,大部分都推荐使用QT做界面。然而,学了一个月,发现不知道是我能力不够还是qt功能有效,比如我想做类似迅雷那样复杂的界面,却发现qt提供的控件实在有限,想做复杂点个性化的界面无从下手。网上搜了一圈,也有html+css+js写界面的,如果能这样那是极好的,学习成本会减少很多。而且web写界面实在太得心应手了。目前有两个候选吧,一个htmlayout和lomox,lomox这个,好像推出几年了,官网啥东西都没有,github零星的人气,什么文档都没完善,怕是遇到问题无从下手,所以有点顾虑,现在唯一的指望就是htmllayout了。
感觉c++开发个软件,做个界面太麻烦了。有啥好办法吗
qt當然可以的
你要是會web的話electron也是很不錯的選擇
qt裡面自帶webkit的,可以嵌入html。
技術好的話,也可以用內嵌的opengl玩自繪。
也可以直接貼圖來做。
參考這個答案: https://www.zhihu.com/question/39607624
還有這個答案 https://www.zhihu.com/question/23717444 中提到的Qt模仿360安全衛士。
如果你要求基於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,阿里雲的雲盾