如何使用 C 作為 Windows 的 GUI?

發布 美食 2024-05-24
4個回答
  1. 匿名使用者2024-02-11

    使用 GTK 或 QT

    搜尋自己,有很多資訊。

  2. 匿名使用者2024-02-10

    事實上,你可以使用Qt,它可以說是最常用的C++來編寫GUI。

    其實,如果要實現GUI,只要能解決Windows問題,基本上可以是乙個更小、更實用的程式,不需要去追求最崇高的追求。

    例如,圖形系統,因為它是乙個 GUI 庫,不能在具有 GDI 功能的 HDC 上繪製,因此可以將其更新到帶有 Update Layered Window 的視窗中,這樣才能有那種半透明形狀的視窗圖形效果。

    其實我個人覺得寫起來還是很麻煩的,用第三方的話來說,沒有小的2D圖形庫,那麼輕量級的圖形庫就突破了500kb的限制。

    所以其實有很多方法,也沒那麼難,主要看你自己的需求是什麼,像這樣您可以根據自己的需要調整您的操作方法

  3. 匿名使用者2024-02-09

    對於普通人來說,不要指望能夠製作乙個大型的 GUI 庫,編寫乙個較小的 GUI 庫來滿足您的需求並適合某種應用程式。

    我曾經遇到過乙個需求,需要乙個小型 GUI 庫來編寫安裝程式。

    1。它不能是 DLL,它必須是靜態鏈結,並且它對系統的依賴性越小。

    2。可執行檔案**必須足夠小,通常最好在 500kbp 左右。

    三。 有很好的圖形效果,比如通過動畫的安裝過程,窗戶應該有乙個半透明的陰影環。

    顯然,用 qt 編寫是不合適的。 雖然我多次知道qt庫不是很大,但它仍然是乙個小而大的編寫和安裝程式,qt的靜態鏈結exe是2mb。

    MFC不合適,MFC靜態鏈結400kb左右,安裝程式本身**和資源必然會突破主機。

    用 VC++ 6 MFC 編寫的要小得多,但它不適合我的口味。

    對於WTL,這必須非常小,程式的靜態鏈結只能建立乙個只有35kb左右的視窗,但是它沒有功能,只能使用標準的誠信基礎、透明視窗、he等API來建立。

    或者寫乙個,有點實用,是用來做安裝的,不是用來追求高能力的。

    跨平台不追求,只解決Windows問題。

    1。視窗管理系統,**api包,但是這個工作很無聊,很麻煩,我這才意識到我自己的視窗類wtl,wtl cwindow聚合,用wtl幫我建立視窗管理,外部看不到wtl,因為我不用派生的不想讓我的wtl汙染介面設計。

    2。事件系統,WTL 訊息對映太難看了,我喜歡 QT 訊號和時隙,但是像 QT 一樣的訊號時隙不容易實現,乙個 C++ 擴充套件語法是等價的,自己實現乙個 MOC 預處理太費力了。 使用boost:

    訊號也太麻煩了。 boost 將引入乙個大型依賴庫。 我也希望 GUI 庫使用預設的 vc++ 進行編譯,我不想依賴太多的庫,boost 函式會帶來編譯困難。

  4. 匿名使用者2024-02-08

    GUI庫可以很小,大的可以是數百萬行的qt WPF,小的可以是WTL,只有幾個標頭檔案。

    對於普通人來說,不要指望建立乙個大型的 GUI 庫,編寫乙個較小的庫,滿足自己的需求,並將其應用於某種應用程式。

    安裝過程很特殊。 對於安裝在 Internet 上的軟體,請滿足以下要求:

    不能帶來dll。 必須使用靜態鏈結,系統的依賴性會更好。

    可執行檔案**必須足夠小,通常最大為 500kb。

    還有比較好的圖形效果,比如超跑動畫的安裝過程,視窗應該有乙個半透明的陰影圈什麼的。

    用 qt 編寫是不合適的,雖然我已經說過很多次 qt 庫不是很好,但對於安裝程式來說它有點大,並且到 qt 的靜態鏈結約為 2mb。

    MFC 不合適,MFC 靜態鏈結在 400kb 左右,安裝程式自己的 ** 和資源必須在 500kb 以上。

    用 VC++ MFC 編寫,它可以小得多,但使用這種古董不符合我的口味。

    用WTL寫的,這當然是很小的,只建立乙個程式靜態鏈結視窗只有50kb左右,但是不知道功能是什麼,只能用標準的分片建立,乙個透明的視窗想自己用其他的API。

    讓我寫一點,更實用一點,只是為了安裝程式,而不是為了高功率。

    不追求跨平台,它只是解決了Windows的問題。

    有幾個基本的子系統可用於實現 GUI 庫:

    視窗管理系統,**封裝Windows API,但是這個工作很無聊,而且很麻煩,我只是用WTL實現,我自己的視窗類cwindow聚合WTL,WTL端幫我建立視窗管理,國外WTL是不可見的,我不使用派生,因為我不想讓WTL汙染介面設計。

    因此,建議使用QT進行大型專案的開發。

相關回答
11個回答2024-05-24

選中資料夾或檔案,單擊滑鼠右鍵,選擇“屬性”,勾選“隱藏”,重新整理,如果,您在資料夾選項中,這是預設的,隱藏的檔案或資料夾,將因為重新整理而被隱藏,如果選擇了資料夾,則顯示所有檔案,那麼該檔案和資料夾,將隱約可見。 >>>More

10個回答2024-05-24

這是Photoshop的綜合應用。 擁有 Photoshop 基礎。 如果您是新手,請觀看教程。

17個回答2024-05-24

#include

#include >>>More

12個回答2024-05-24

麵包初學者的必做之作:黃油卷。

如果您仍然想知道哪種麵包更適合麵包初學者並且失敗率低,那麼這款黃油卷可能是您最好的選擇! >>>More

8個回答2024-05-24

蛋糕不可能在烤箱裡製作

菜盆是絕對不可能的 >>>More