MFC WTL WPF wxWidgets Qt GTK 各有什麼特點?

時間 2021-05-05 17:06:41

1樓:

看了下WTL10,比ATL 7晚幾年,卻一直用ATL 7棄用的類,可見支援一般

WTL 10 使用 CComModule

文件CComModule Class

As of ATL 7.0, CComModule is deprecated: see ATL Module Classes

2樓:ExboCooope

維護過wx+lua的關卡指令碼編輯器,怎麼說呢僅僅是可以用的狀態,想加非模態對話方塊因為焦點的問題試了幾次放棄了,想做圖形互動工具,雙快取一直配不好閃屏報錯

3樓:

這裡面除了WPF沒接觸過,其他都有長期使用經驗,總的來說,沒有滿意的圖形介面庫,也不推銷任何其他的圖形介面庫.我個人按喜歡程度排個序 Qt > WTL > MFC > wxWidgets > GTK, 最有意思的是用模板實現的WTL.但不能跨平台很遺憾.

4樓:Necther

我最先剛開始工作的時候是做MFC的objectARX開發軟體專案還在電網電科院得了獎

但是做這個真的不賺錢,並不是技術不好而是投入回報比太低後來轉了做資料探勘機器學習演算法方向之後收入直線上公升雖然本回答和這個題目沒有太大關係只是想借這個回答勸退一些人這樣大家都好

做介面的也會因為競爭少工資漲一點

5樓:

用過mfc和qt 。mfc已經涼了,新專案是不會用到這個的,介面醜,寫起來繁瑣。qt還行吧跨平台選他肯定沒錯,寫介面還行。

6樓:btman2004

不知道那些大牛們是不是從來不寫GUI的程式,反正我一直在尋找乙個可以跨平台好用的類似瀏覽器CSS那樣的介面的庫,到今天2023年了,也沒發現有。這實在是程式界的悲哀。而且今天大部分的程式都變成BS模式,到今天要開發GUI也是非常麻煩的事情。

微軟的VS安裝完居然要幾十上百G,我的天,開發乙個程式需要那麼大麼?其實GUI說起來是非常簡單的東西,就是接管螢幕,直接繪製就行了。只要系統提供繪製的硬體加速功能,效能是肯定不可能有問題的。

否則原生的一樣會有問題的。而且不管什麼裝置,螢幕的概念都是統一的。完全可以做到不同的系統統一的GUI外觀,可惜現在有的基本都是很多公司私有,收費的。

開源界乙個都沒有!

太悲哀了。看到WEB方案的如火如荼,對比GUI這個領域,真是可以用發展停滯來形容!

7樓:zpan

我只想吐槽一下那些說 GTK+ 難用是因為 C 語言的,你們難道從來沒用過 gtkmm、Vala、PyGObject 嗎?

8樓:Pluto Hades

當前來看,感覺Qt最靠譜,跨平台優勢也很大。

未來的話,HTML也許可以。

MFC、WTL、wx之流基本算是過時了,估計不會再撿起來用了這裡吐槽一下GTK,真是太難受了,讓人陷入「這TM到底是物件導向還是面向過程?」的混亂中

9樓:

我來補充一些概念。

不少朋友都不約而同提到了最好框架具有「豐富的控制項」,是呀,意思就說,用現有的控制項就行了,這樣省事。但如此評價乙個框架,或者評價框架之間的優劣,就不太全面了。

但凡比較專業的軟體,很多都有專用的領域性的編輯器,以充分發揮 GUI 介面的特色。這些任務是通用控制項完成不了。

很多框架都允許從現有控制項中組合派生出新的控制項。比如文字編輯器,相信不少朋友都有過用一堆 TextBox 拼湊起來乙個完整的介面的經歷。但這種方式,在有些較為極端的情況下效果就不好了,因為視窗太多了以後對系統資源耗費很厲害,另外假如需要做真正的全屏編輯效果,比如拖動定義文字塊的時候,就不太容易跨越 TextBox 的固有顯示邊界,做一些 hacking 是可以的,但常常在精力耗費方面得不償失。

如果我們換一種思路,直接接管乙個 Windows 視窗,在 GDI 上繪製文字和影象,接管 Caret,處理定義文字塊等等,也就是說如同乙個原生控制項那樣去開發,往往問題能得到徹底解決,成本也許不如預想的那麼高。我倒也不是說每個控制項都要自己去發明輪子,而是說你這個軟體所在的領域的關鍵性的介面,值得這麼來一手,會成為產品的乙個亮色,奠定產品的技術形象。

有朋友提到那種多種控制項組合起來的介面,看起來比較紛亂,也許是因為對每個控制項的控制力不夠,比如不必要的邊框太多,視覺上分割很厲害。很多程式設計師願意認同真正控制項單元的那個邊界,而不是業務上的視覺邊界,所以做出來的介面給使用者感覺就是比較書呆子氣。如果破除這種思想障礙,那即便用現有控制項堆砌起來的介面,也是有很大的提公升空間的。

比如 WPF 就更多地把每種控制項看作介面的圖元,用這些東西構成有意義的視覺效果。但出現的乙個問題就是,這些圖元的層次太多以後,顯示重新整理效率會有問題。我傾向於認為,這種方式可以理解為一種製作原型的必要手段,一旦確認這種視覺效果可行、但速度不夠記憶體耗費太大之後,應該考慮用專用控制項替代重寫。

本人從 16 位 Windows 時代就一直寫自己的專用控制項,用過純 C 語言(Windows API),後來是 MFC,然後是 WinForm,感覺寫控制項本身差異不是太大。就好比很多抱怨 C# 功能不夠的,其實是不了解 Windows API 的緣故。WPF 裡面如何寫原生控制項還不了解,但尋思方法也應該差不多吧。

框架給的東西雖然很重要,但其實相當程度視覺效果還是你能自己控制的。

10樓:黃勇

mfc win32 native的不二選擇。

wtl activex 的不二選擇。

wx 玩玩就好,最好不選擇

QT 跨平台的不二選擇。

gtk 開源gui的不二選擇。

wpf 二的選擇。

11樓:

MFC乃曾經的老大,現在來看設計有點落後;原本可以做得更好用,但MS為了推COM而變得臃腫,而現在MS為了推.net更不願意繼續發展它。

WTL基於ATL,ATL是COM元件的模版庫,COM是C++應用中的毒瘤(明知有人會噴我,我依然堅持真理); WTL曾受MS打壓,因為MS怕它的輕巧特性會妨礙推廣.Net,現在不需要打壓了,因為已經扶不上牆了。

WPF:不是給C++用的。

wxWidgets:小巧、小眾、多bug;和MFC差不多,這是優點,也是死穴。

Qt:庫有點龐大,啥都有,訊號和槽機制需要特殊的編譯器搞;沒能盡量復用C++已有的庫,看重複的東西會人特別煩。(我個人最看好Qt)。

GTK:兩個字「難用」。

支援廣東話(粵語)的輸入法都有哪些?各有什麼特點?哪個最好?

LingYi Master Windows 中州韻 小狼毫輸入法 Android 搜狗輸入法 Gboard 中州韻 同文輸入法 iOS iPadOS 搜狗輸入法 中州韻 iRime輸入法 MacOS 中州韻 鼠須管 Linux 中州韻 ibus rime 注 如果用Google鍵盤 或Gboard ...

歐洲各國人民的烤肉技術哪家最強?各有什麼特色?

公司聚餐,朋友聚會,烤肉料理都是大家時常的選擇。畢竟 燒 烤 都是人類最原始的烹飪方式,經過時間的沉澱烤肉依然是我們當今日常生活中,最重要的烹飪方式。烤肉的種類很豐富,世界各地都有不同的烹調方法,日式烤肉,韓式烤肉,土耳其烤肉,巴西烤肉等等。本次主要分享這些國家的烤肉有什麼區別?1.日式烤肉 日式烤...

耳機品牌中,森海 索尼 鐵三角 捷波朗各有什麼特點,該如何選擇?

平安是福 首先音質對於我來說是很重要的。我只了解第二和第三這兩款耳機。第二款耳機是適合我的,最吸引我的就是它的續航和音質了。第三款耳機音質是滿意的,舒適度很適合我。只能說這兩款耳機都有各自的有點吧。就要看個人的選擇了。 小清新世界 選擇耳機對於我來說真是個老大難的問題了,也下了很多功夫。其實這四個耳...