日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

VFP 基本類的使用指南

 悟靜 2009-06-12

Visual FoxPro 的 .vcx 可視類庫位于 \Ffc\ 文件夾,包含了各種基本類,使用這些基本類可以不通過編程或較少的編程即能改進 Visual FoxPro 應(yīng)用程序。用戶可以自由地將基本類和其應(yīng)用程序一起發(fā)布。這些基本類包含在“組件管理庫”中。“組件管理庫”提供了了解每個基本類的屬性、事件和方法程序的快速和簡便方法。

也可以在“類設(shè)計器”或“類瀏覽器”中打開一個基本類,查看其結(jié)構(gòu)和代碼。這是一種極好的方法,不但可以更深入理解 Visual FoxPro 編程,還可以理解基本類的工作機理。

以下內(nèi)容可指導(dǎo)用戶如何將 Visual FoxPro 基本類添加到應(yīng)用程序中。

類的類型

在將一個基本類添加到應(yīng)用程序之前,用戶需要了解該基本類的 Visual FoxPro 基類。某些基本類只能在表單上用作可視對象,而其他基本類是非可視的,可以通過編程運行,而不必放在表單上。Visual FoxPro 基本類文檔描述了每個基本類的基類,用戶可以用來確定某個基本類是否可以添加到表單上、或在應(yīng)用程序中通過編程運行。請注意,在“組件管理庫”中,可以在一個基本類上單擊鼠標(biāo)右鍵來顯示一個快捷菜單,然后從快捷菜單中選取“屬性”命令,并選取“類”選項卡顯示這個基類。

下表列出了 Visual FoxPro 的基類,并說明如何將其添加到用戶應(yīng)用程序中。

種類 A –可以放落到表單上的基類。 種類 B –可以放落到表單上或在應(yīng)用程序中通過編程運行的基類。 種類 C – 只能在應(yīng)用程序中通過編程運行的基類
Checkbox Custom Form
Combobox Container Formset
命令button Timer Toolbar
命令group ProjectHook  
Editbox ActiveDoc  
Grid    
Hyperlink    
Image    
Label    
Line    
Listbox    
OLE控件    
Optionbutton    
Optiongroup    
Shape    
Spinner    
Textbox    

 

將基本類添加到表單中

通常用戶需要經(jīng)常將基本類添加到表單中??梢詮?#8220;組件管理庫”、“類瀏覽器”、“項目管理器”和表單控件工具欄將基本類拖動到表單上。

注釋 可以選中一個已經(jīng)添加到表單上的基本類,然后從“工具”菜單中選擇“類瀏覽器”命令來顯示該基本類的詳細信息。

組件管理庫 – “組件管理庫”提供了將基本類添加到表單的最簡便的方法。對于種類為 A 和 B 的基類,用戶可以從“組件管理庫”拖動基本類,然后將其放落到表單上。在“組件管理庫”中,也可以在一個基本類上單擊鼠標(biāo)右鍵顯示一個快捷菜單,然后選擇“添加至表單”命令,將該基本類添加到表單上。

有些基本類具有相關(guān)的生成器,這些生成器可自動啟動并向用戶提示該基本類的詳細信息。

類瀏覽器 – 用戶可以使用瀏覽器左上角的拖動圖標(biāo),將對應(yīng)于 A 和 B 基類的基本類從“類瀏覽器”拖動到表單上。方法是:在“類瀏覽器”中選中一個基本類,并在瀏覽器左上角單擊該基本類的圖標(biāo),然后將該圖標(biāo)拖動到表單上;在表單上,在該基本類出現(xiàn)的地方釋放鼠標(biāo)按鈕。

從“類瀏覽器”中將基本類拖動到表單上,將不啟動相關(guān)的生成器。但可以在將基本類拖動到表單上后,啟動生成器。方法是:選中表單上的基本類,單擊鼠標(biāo)右鍵顯示快捷菜單,從快捷菜單上選取“生成器”命令啟動生成器。

項目管理器 – 可以從“項目管理器”拖動對應(yīng)于種類 A 和 B 基類的基本類,并將其放落到表單上。

從“項目管理器”中將基本類拖動到表單上,將不啟動相關(guān)的生成器。但可以在將基本類拖動到表單上后,啟動生成器。方法是:選中基本類,單擊鼠標(biāo)右鍵顯示快捷菜單,從快捷菜單上選取“生成器”命令啟動生成器。

表單控件工具欄 – 添加到表單控件工具欄上的對應(yīng)于種類 A 和 B 基類的基本類,可以從工具欄添加到表單上。

如果沒有啟用“生成器鎖定”,從表單控件工具欄放落基本類可能會啟動相關(guān)的生成器。如果啟用“生成器鎖定”,則可在將基本類添加到表單上后啟動生成器。方法是:選中基本類,單擊鼠標(biāo)右鍵顯示快捷菜單,從快捷菜單上選取“生成器”命令啟動生成器。

將基本類添加到項目中

在將包含基本類的表單添加到 Visual FoxPro 項目中時,“項目管理器”自動地將包含該基本類的可視類庫添加到項目中。但有時需要人工地將基本類添加到項目中,如當(dāng)用戶應(yīng)用程序需運行種類 C 對應(yīng)的基本類時,必須人工地將基本類添加到項目中。

可以使用下列方法之一將 Visual FoxPro 基本類添加到項目中:

  • 從“組件管理庫”拖動包含該類的項

     
  • 在 Windows“資源管理器”中拖動類庫文件(.vcx)。

     
  • 在“項目管理器”中選取“添加”按鈕

從“組件管理庫”添加基本類

可以從“組件管理庫”將基本類拖動到該項目中、或在“組件管理庫”中,在基本類上單擊鼠標(biāo)右鍵顯示快捷菜單,然后選擇“添加至項目”命令,實現(xiàn)將基本類添加到項目中。在將基本類添加到項目中時,將顯示“向項目添加類”對話框,有下列選項:

向項目添加類

選擇本選項可以將基本類及其 .vcx 類庫添加到項目中。對于放落到表單上的類(種類 A 和 B),這些操作將自動完成。對于種類 B 和 C 的某些類,如果打算在應(yīng)用程序中通過編程對其進行調(diào)用,需要選擇本選項。

從選定的類創(chuàng)建新類

選擇本選項可以根據(jù)希望添加到項目的基本類創(chuàng)建一個新的子類。通常情況下,通過添加附加的程序代碼,可以改進原始基本類的功能。

從選定的類創(chuàng)建新表單

對于基類是 Form 的基本類(如,_dialogs.vcx 中的基本類),可以選擇本選項來根據(jù)基本類創(chuàng)建一個新的表單,改進初始基本類的功能。

從 Windows“資源管理器”添加基本類

可以使用 Windows“資源管理器”來訪問將要添加到項目中的類。

若要使用 Windows“資源管理器”添加基本類

  • 從 Windows“資源管理器”中選中包含該類的類庫文件(.vcx),并將其添加到“項目管理器”中。

該可視類庫將被添加到“項目管理器”的“類庫”數(shù)據(jù)項中。

在“項目管理器”中添加基本類

在“項目管理器”中,可以使用“添加”按鈕將類添加到項目中。

若要在“項目管理器”中添加基本類

  1. 在“項目管理器”中,選擇“類”選項卡。

     
  2. 單擊“添加”按鈕。

     
  3. 選取 \Ffc\ 文件夾中包含需要添加到項目中的基本類的類庫。

     
  4. 單擊“確定”按鈕。

將類合并到應(yīng)用程序中

在很多情況下,無須通過額外的編程,基本類和應(yīng)用程序即可一起工作。但對于某些基本類(對于種類 B 和種類 C 中的非可視基類),可能需要提供附加的程序代碼。

非可視基本類

例如,基本類經(jīng)常為基于種類 B 的 Custom 類,這些基本類需要附加的編程。這些非可視類經(jīng)常用來完成一些公用任務(wù),如檢查 Windows 注冊表中的信息、處理環(huán)境設(shè)置、管理應(yīng)用程序錯誤以及利用其他應(yīng)用程序的自動服務(wù)(如使用 Microsoft Word 進行郵件合并)等。

可以將這些非可視類放落到表單上,但除此之外,還需要做一些額外的工作,才能使基本類和應(yīng)用程序一起工作。在某些情況下,在將基本類放落到表單上時,將啟動生成器。

下面的示例演示了如何在應(yīng)用程序中使用非可視基本類的程序代碼:

  1. 從“組件管理庫”中將文件版本(File Version)基本類(Foundation classes\Utilities 文件夾)拖放到一個表單上。

     
  2. 將一個命令按鈕添加到表單上,并將下列代碼添加到 Click 事件中:
    WITH THISFORM._FILEVERSION1
        .cFileName = HOME( )+ 'VFP6.EXE'
        .GetVersion( )
        .DisplayVersion( )
        ENDWITH
        
  3. 運行表單,并單擊命令按鈕。

可以將一個非可視類合并到應(yīng)用程序中,而不必將其放落到表單上,但必須將其包含在用于創(chuàng)建應(yīng)用程序的項目中。下列代碼演示了如何運行相同的“文件版本”基本類,但不將該類放落到表單上。

LOCAL oFileVersion
oFileVersion = NewObject(_fileversion, _utilities.vcx)
WITH oFileVersion
.cFileName = HOME( )+ 'VFP6.EXE'
.GetVersion( )
.DisplayVersion( )
ENDWITH

注釋 本示例假設(shè)這段代碼可以定位 _utilities.vcx 類庫,或這段代碼位于一個連編時包含 _utilities.vcx 的 .app 文件中。

在使用非可視基本類時,用戶需要了解如何以及何時在應(yīng)用程序中使用該類,以便正確地設(shè)置其范圍。如果只有一個表單使用該類,只需將其拖動到對應(yīng)的表單上。但是,如果有很多表單使用該類,或者由應(yīng)用程序全域使用,則該基本類在應(yīng)用程序中應(yīng)該有一個全域范圍,以便在整個應(yīng)用程序中都可以對其進行訪問。此外,全域范圍也可能提高性能。

可視基本類

也可以通過編程向應(yīng)用程序中添加可視基本類,例如基類是表單的基本類。下列的示例為一段代碼,可以添加到應(yīng)用程序中,顯示一個“關(guān)于框”對話框(Aboutbox dialog)。

LOCAL oAbout
oAbout = NewObject(_aboutbox,_dialogs.vcx)
oAbout.Show( )

用戶可以為每個應(yīng)用程序創(chuàng)建“對話框”基本類的子類,這樣可以定制應(yīng)用程序?qū)υ捒蛑械膬?nèi)容。下面示例演示了如何創(chuàng)建 Aboutbox 基本類的子類:

  1. 從“組件管理庫”中將 Aboutbox 類(Foundation classes\Utilities 文件夾)拖放到應(yīng)用程序的項目中。

     
  2. 在“向項目添加類”的對話框中選取“從選定的類創(chuàng)建新表單”,并輸入表單名。

     
  3. 更改應(yīng)用程序新表單的 Caption 屬性

     
  4. 保存并關(guān)閉表單。

     
  5. 將程序程序代碼(DO FORM FormName)添加到運行該表單的過程中,例如“關(guān)于”菜單項的過程中。

    -或-

從“組件管理庫”中將“運行表單”按鈕(Run Form button)類(Foundation classes\Buttons 文件夾)拖放到表單上。啟動生成器時,指定需要執(zhí)行表單名。

如果使用 Visual FoxPro 6.0 的應(yīng)用程序框架,應(yīng)用程序生成器將自動管理表單( .scx 和 .vcx 表單類)的添加操作。新的應(yīng)用程序向?qū)Щ?#8220;組件管理庫”的“新應(yīng)用程序”數(shù)據(jù)項將在創(chuàng)建的項目中安裝這個框架。應(yīng)用程序生成器直接與該框架交互,使用戶可以指定如何以及在何處啟動表單。

通過使用一個由“應(yīng)用程序向?qū)?#8221;、“應(yīng)用程序生成器”和“組件管理庫”生成的框架,用戶可以得到種類豐富的工具,只需少量的代碼即可創(chuàng)建整個應(yīng)用程序。

類的命名約定

Visual FoxPro 的基本類及其屬性和方法程序使用下列命名約定。

類和類庫

大多數(shù)基本類是 _base.vcx 可視類庫中的類的子類,可以在 \Ffc\ 文件夾找到這些基本類。這些類的命名約定反映了所使用的基類,如在 _base.vcx 中 Custom 類的子類稱為 _Custom。在 _base.vcx 中,在每個類名前都帶有下劃線( _ )。

有些類庫不包含根據(jù) _base.vcx 創(chuàng)建的子類,因為這些類與其他 Visual FoxPro 組件共享,如向?qū)Ш蜕善?。這些類包含在沒有下劃線的類庫中,例如 Registry.vcx。

法程序和屬性

方法程序的名稱經(jīng)常基于其動作名,如 RunForm。如果名稱包含幾個單詞,如 RunForm,則大寫字母將反映這一點。屬性名通常在前面有一個小寫字母,用來反映特定屬性的數(shù)據(jù)類型,如 cFileName 表明該屬性是一個字符類型。另外,屬性的默認值也設(shè)置為相應(yīng)的數(shù)據(jù)類型,如邏輯型屬性可以初始化為“假”(.F.),而數(shù)值型屬性可以初始化為 0。

早期版本的 Visual FoxPro 類的屬性不受這些屬性命名約定的限制,并且保持原來的名稱,以避免與引用這些屬性的用戶代碼產(chǎn)生兼容性沖突。

改進或修改 FoxPro 基本類

用戶可以改進或修改 Visual FoxPro 基本類,以滿足應(yīng)用程序的需要。但是,我們建議您不要修改基本類本身,因為基本類可能會周期性地更新,并帶有新的功能。

創(chuàng)建基本類的子類

由于提供了源代碼,這樣用戶可以創(chuàng)建任何基本類的子類,來覆蓋或改進屬性和方法程序。當(dāng)特定的基本類在不同的應(yīng)用程序中有不同的行為時,可以選擇創(chuàng)建子類。

更新 _base.vcx

如果需要對 Visual FoxPro 基本類添加全域性的更改時,可以修改 _base.vcx。既然基本類是根據(jù) _base.vcx 創(chuàng)建的子類,對該類庫的更改將自動反映到基本類中。_base.vcx 中的所有類都提供了一組普通的方法程序和屬性。但如果 _base.vcx 中的類不能向應(yīng)用程序添加所需的行為時,可以更改這些類(這與建議不要更改的基本類不同)。

但是,如果需要從用戶自定義的基類(而不是基于當(dāng)前使用的 Visual FoxPro 基類)繼承 _base.vcx 中類的行為,應(yīng)該重新定義這些類,而不要更改 _base.vcx。如果已經(jīng)有了一個基于 Visual FoxPro 基類的自定義類庫,可以重新定義 _base.vcx 中的類,以便從自定義類中繼承其行為。這樣,當(dāng)組件使用 _FoundationClasses 時,組件也將自定義類中繼承行為??墒褂妙悶g覽器重新定義特定類的父類。

如果將整個 _base.vcx 中的類替換為用戶自定義類,請確保類名必須相同,否則基本類將有丟失的鏈接。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多