理解MFC中的“資源”概念

      Visual C++ 支持十種資源:加速鍵、位圖、光標、對話框、HTML、圖標、菜單、串表、工具條和版本信息。     

      各種資源就是堆數據而已,最終都會被嵌入到EXE文件裏的數據區中。需要的時候就通過函數加載到內存中使用。和數據庫一樣的。各種資源通過ID來唯一確定,就像數據庫用關鍵字來確定一樣。不同的資源由於類型不一樣可以使用等值的ID,如同數據庫裏的每一個表單裏的關鍵字值不唯一,但不同表單的關鍵字是允許一樣的。 
      資源銷燬,指的是讓資源根據它的使用週期應該及時從內存中被釋放,不要加載到內存後就不管了。否則內存越吃越大。

      你可以隨時創建任何所需要的資源。只需顯示ResourceView(資源視圖),右擊Resources(資源)文件夾,從上下文菜單中選擇Insert(插入)。你會看到一個Insert Resource(插入資源)對話框,如上圖所示。請注意,它顯示出我們已提到過的所有十種資源。還應該看到,有三種創建資源的方式,即使用對話框上的New(新建),Import(導入)或Custom(自定義)按鈕。可以在當前程序中使用來自其它工程的資源。例如,可能想在編寫的每一個程序中都使用相同的公司徽標。只需右擊Resources(資源)文件夾,從上下文菜單選擇Import(導入)而不是Insert(插入)。你會看到Open-type(打開類型)對話框。選擇包含了想要導入的資源的文件。正是由於這個原因,你會想到把你的大多數資源與程序分離。可惜的是,這種方法只對圖標、光標、聲波文件以及Visual Basic窗體文件有用。有幾種使用來自其它工程的其它類型資源的方式,如About(關於)對話框。只需簡單地爲想要共享的資源創建一個分離的RC文件就行了。這在遇到像About對話框這樣的資源時很有用。你只要將RC文件添加到工程中,剩下的由Visual C 來處理。另一種共享資源的方法是,將其複製到剪貼板,再在創建了正確類型的空白資源後,將其粘貼到工程中。自定義資源就是自己設計的資源。實際上,它並不適合Visual C 所提供的預定義類型。創建一個自定義資源項目很容易:只要單擊Insert Resource(插入資源)對話框上的Custom(自定義)按鈕。你會看到包含單個空白的New CustomResource(新建自定義資源)對話框。簡單地輸入自定義資源名。這時,Visual C 會產生一個新的文件夾,它含有你提供的自定義資源名和該文件夾內的一個新資源。還要提供實現這個資源所需的二進制數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章