Futurebasic/語言/參考/資源
資源
2000 年 5 月 30 日(版本 3)
這是一個非可執行語句,執行兩個主要功能:它指定程式的檔案型別和建立者;它標識一個包含資源的現有檔案(路徑名),這些資源應在 FB 構建檔案時複製到應用程式檔案或程式碼資原始檔的資源分支中。RESOURCES 語句是可選的。如果您在程式中不包含它,FB 將構建一個型別為“APPL”,建立者簽名為“xxxx”的應用程式檔案,其中包含一組標準資源。資源也可以透過將資原始檔拖放到專案管理器視窗中來新增。您可以在程式中包含多個 RESOURCES 語句。FB 使用遇到的第一個 RESOURCES 語句來確定檔案型別和建立者。路徑名引數可以是完整路徑名或部分路徑名,該路徑名指定包含資源的檔案;或者指定指向該檔案的別名。如果您使用部分路徑名(例如,簡單檔名),則假設該路徑相對於您的專案資料夾。當 FB 構建應用程式檔案時,它將從路徑名檔案中的所有資源複製到構建的檔案的資源分支中。請注意,如果您未指定路徑名引數,則仍必須指定一對(空的)雙引號。使用多個 RESOURCES 語句 有時,讓 FB 從多個不同的資原始檔複製資源會很方便。您可以透過在程式中包含多個 RESOURCES 語句來實現這一點,每個語句指定一個不同的路徑名引數。如果您的程式包含多個 RESOURCES 語句,則第二個及所有後續的 RESOURCES 語句不應指定除路徑名以外的任何引數。如果您的程式包含多個 RESOURCES 語句,則有可能在資源之間發生“衝突”。當一個路徑名檔案中的資源與另一個路徑名檔案中的資源具有相同的型別和相同的 ID 號時,就會發生這種情況。當這種情況發生時,FB 在構建檔案時,遇到的最後一個資源將替換遇到的第一個資源。在決定將 RESOURCES 語句放置的順序時,您應該牢記這一點。版本 3 中的新功能:如果您的資源的 ID 為 32512-32767,編譯器會在看到衝突時對其重新編號。這樣,您可以透過名稱引用它,並使用 GETNAMEDRESOURCE 拾取它。這對那些希望將原始碼與所需資源一起分發的使用者非常重要。
示例:您的專案中有兩個資原始檔。
myRes1.rsrc myRes2.rsrc myRes1.rsrc 包含:_"PICT" ID 501 Name "One" _"PICT" ID 502 Name "Two" _"PICT" ID 32512Name "Fred" myRes2.rsrc 包含:_"PICT" ID 501 Name "OneOne" _"PICT" ID 502 Name "TwoTwo" _"PICT" ID 32512Name "Barney" 您的最終應用程式將包含:_"PICT" ID 501 Name "OneOne"<- 注意 OneOne 替換了 One _"PICT" ID 502 Name "TwoTwo"<- 注意 TwoTwo 替換了 Two _"PICT" ID 32512Name "Fred" <- 32512 的第一個版本已儲存 _"PICT" ID 32513Name "Barney"<- 32512 的第二個版本已重新編號 一些有用的資源
在構建應用程式時,FB 會自動包含應用程式所需的標準資源集。您可以透過包括以下資源來增強應用程式(所有這些資源都可以使用 ResEdit 建立)
-VERS- "vers" 資源,其 ID 為 1 和 2,包含在 Finder 視窗和“獲取資訊”視窗中可見的版本資訊。有關更多資訊,請參見 Inside Macintosh:Macintosh Toolbox Essentials 中的“Finder 介面”一章。
-SIZE- "SIZE" 資源,其 ID 為 -1、0 和 1,包含有關應用程式記憶體大小、可以響應的事件型別等的 중요한 資訊。FB 在構建應用程式時始終包含“SIZE”資源,但您可能希望透過提供自己的“SIZE”資源來覆蓋預設“SIZE”資源中的功能。有關更多資訊,請參見 Inside Macintosh:Macintosh Toolbox Essentials 中的“事件管理器”一章。
-BNDL, FREF, ICN#- 使用這些資源為應用程式和應用程式建立的文件分配特殊圖示。這些資源還確定哪些型別的文件可以拖放到 Finder 中的應用程式圖示上。有關更多資訊,請參見 Inside Macintosh:Macintosh Toolbox Essentials 中的“Finder 介面”一章。
CALL <resource>; BUTTON (自定義 CDEF's); ENTERPROC