<style id="uedzd"></style>
  • <style id="uedzd"></style>
  • <dfn id="uedzd"></dfn>
  • <dfn id="uedzd"></dfn>
    1. <ruby id="uedzd"></ruby>
      <ruby id="uedzd"></ruby>
    2. 名師風(fēng)采
      裴鵬飛,男,中共黨員,1994.9~1998.7,安徽農(nóng)業(yè)技術(shù)師范學(xué)院本科畢業(yè)。1998.7~2001.8 在宣城市宣州區(qū)雙橋職高擔(dān)任計算機教師。2001.9至今調(diào)至宣城市職高(更名為宣城市信息工程學(xué)校)……
      工作坊概況
      2016年安徽省教育廳、財政廳、人社廳等單位根據(jù)安徽省中等職業(yè)教育質(zhì)量提升工程批準(zhǔn)創(chuàng)建的,目前工作坊計12人,均具有本科以上學(xué)歷,碩士研究生1人,副高6人,中級職稱2人, 35歲以下青年教師3人, 外聘教師2人。
      16.1對象、屬性、事件和方法
      發(fā)布時間:2019-01-27 01:01:10  信息來源:出處:   閱讀次數(shù):

      16.1對象、屬性、事件和方法

      目的與要求:

      通過本次課的學(xué)習(xí),掌握VFP的對象的操作方法。

      教學(xué)內(nèi)容與時間安排、教學(xué)方法:

      教學(xué)安排:

      對象的引用、屬性設(shè)置                       40分鐘

      調(diào)用方法程序、響應(yīng)事件                     40分鐘

      教學(xué)方法:

      CAI、圖形、表格

      教學(xué)重點及如何突出重點、難點及如何突破難點:

      教學(xué)重點:

      對象的引用、屬性設(shè)置、調(diào)用方法程序、響應(yīng)事件

      教學(xué)難點:

      調(diào)用方法程序、響應(yīng)事件

      基本內(nèi)容

      教學(xué)
      手段

      課堂設(shè)計
      和時間安排

      9.4 對象的操作

      1.對象的引用

        在Visual  FoxPro中,由于包容對象的存在,對象是可以進行嵌套的。為了引用和處理包容對象,需要知道對象相對于容器的層次關(guān)系。圖8-1給出一種可能的容器嵌套方式,表單form1在表單集formset1中

       知道了對象在容器中的層次,就可以引用對象。引用對象分為絕對引用和相對引用兩種方法:

      (1)對象的絕對引用:

         對象絕對引用通過提供對象完整的容器層次來引用對象。絕對引用使用格式如下:<對象>.<屬性>或<對象>.<方法>

       例如:在圖8-1中,要使嵌套在頁框中的命令按鈕1(Command1)可用,命令按鈕2(Command2)禁用,可以通過設(shè)置命令按鈕的Enabled屬性來實現(xiàn)。

      Formset1.Form1.PageFrame1.Page1.Command1.Enabled=.T.

      Formset1.Form1.PageFrame1.Page1.Command2.Enabled=.F.

      以上示例引用格式為:表單集.表單.頁框.頁.命令按鈕.Enabled=.T.。其中Enabled屬性用于指定對象能否響應(yīng)用戶引發(fā)的事件,允許將對象設(shè)置為啟用或被禁

      (2)對象的相對引用

         對象除了采用絕對引用方式外,還可以采用相對引用的方式。相對引用是通過使用一些屬性和關(guān)鍵字,更方便地從容器層次中引用對象。表8-9列出了常用的引用關(guān)鍵字:

         要設(shè)置表單集中Form1表單的Command1命令按鈕的標(biāo)題屬性,可以使用下面的命令 :      

      ThisformSet.Form1.Command1.Caption="確定"或

      Thisform.Command1.Caption="確定"或

      This.Caption="確定"

      2.設(shè)置屬性

        對象的屬性既可以在設(shè)計對象時設(shè)置,也可以在程序運行時設(shè)置。在設(shè)計對象時對象屬性可以通過“屬性”窗口設(shè)置,屬性窗口的使用方法將在后緒章節(jié)介紹,下面介紹如何使用命令在程序中設(shè)置對象的屬性。

      用戶在編程時可以引用對象的屬性值,也可以以命令方式對對象的某些屬性進行修改。在運行時可以設(shè)置并可讀取屬性值的屬性稱為“讀寫屬性”;而在運行時只能讀取屬性值的屬性稱“只讀屬性”。設(shè)置對象屬性的語法格式如下:<容器>.<對象>.<屬性>=<屬性值>

        例如,下面的命令對表單Form1中復(fù)選框Check1的屬性進行設(shè)置:

      thisForm.Check1.Value=1

      thisForm.Check1.Enabled=.F.

        在屬性設(shè)置時,可能要為一個對象設(shè)置多個屬性,或者要為同一容器中的多個對象設(shè)置屬性,都需要給出相同層次結(jié)構(gòu)中的從屬關(guān)系。為此Visual FoxPro提供了WITH……ENDWITH結(jié)構(gòu)語句,簡化了設(shè)置多個對象、多個屬性的過程。例如,在當(dāng)前表單集的表單中,要設(shè)置表格列的多個屬性,可以使用以下格式:      

      WITH Thisformset.Form1.Grid1.Column1

      .Width = 25

      .Resizable = .F.

      .ForeColor = RGB(0,0,0)

      .BackColor = RGB(255,255,255)

      .SelectOnEntry = .T.

      ENDWITH

        注:為生成高效的程序代碼和減少數(shù)據(jù)冗余,當(dāng)引用當(dāng)前對象的時候,當(dāng)前對象在程序代碼中可以省略.

      -----------本節(jié)課結(jié)束-----------

      3.調(diào)用方法程序  

        如果已經(jīng)創(chuàng)建對象,便可以在應(yīng)用程序的任何一個地方調(diào)用這個對象的方法程序。調(diào)用方法程序,可以使用以下語法:Parent.<對象>.<方法>

      例如,下列語句調(diào)用方法程序來顯示表單,并將焦點設(shè)置在文本框上:

      FormSet.Form1.Show

      FormSet.Form1.Text1.SetFocus

        有些方法可以帶返回值,調(diào)用時方法名后就要使用園括號。如果方法使用多個參數(shù),調(diào)用時需要將這些參數(shù)放到方法名后的園括號內(nèi),并用逗號將它們分開。

      語法是:Parent.<對象>.<方法>(參數(shù)1,參數(shù)2,...參數(shù)n)

      4.響應(yīng)事件

       當(dāng)事件發(fā)生時,包含在事件過程中的代碼就會執(zhí)行,這是對事件的響應(yīng)。對于控件類對象,它們能夠識別的事件是固定的,用戶不能用程序設(shè)計方法再產(chǎn)生其它事件,但是可以設(shè)計和調(diào)用與這些事件相關(guān)的過程代碼。例如:包含在命令按鈕Command1的Click事件中的代碼,當(dāng)用戶單擊該命令按鈕時將會被執(zhí)行。如果我們在命令按鈕Command1的Click事件中添加如下代碼:ThisForm.Release,則當(dāng)用戶單擊該命令按鈕Command1時,將會調(diào)用釋放表單的方法程序

        事件有兩種觸發(fā)方式:

        第一種是用戶干預(yù)觸發(fā)事件,如點擊鼠標(biāo),可以產(chǎn)生Click(單擊)、DoubleClick(雙擊)、MouseMove(移動到)、DragDrop(拖放)等事件,按鍵可以產(chǎn)生一個KeyPress(按鍵)事件,這些事件是用戶的實際操作。另外,用戶還可以通過MOUSE、KEYBOARD和ERROR命令來模擬鼠標(biāo)、鍵盤操作和模擬錯誤,產(chǎn)生相應(yīng)的事件。例如,使用ThisForm.Command1.Click可以觸發(fā)單擊鼠標(biāo)事件。

        第二種是Visual  FoxPro系統(tǒng)自動觸發(fā)事件,這類事件占Visual FoxPro事件的絕大部分。例如,當(dāng)創(chuàng)建對象時,都會自動產(chǎn)生Init(初始)事件;釋放對象時,會自動產(chǎn)生Destroy(釋放)事件。

        在容器層次中,容器不處理與其所包含控件相關(guān)聯(lián)的事件,也就是容器事件的過程代碼與控件的事件過程代碼是相互獨立的。當(dāng)事件發(fā)生時,只有與事件相關(guān)聯(lián)的最里層對象識別事件,較高層的容器不識別該事件。例如,當(dāng)用戶單擊表單上的命令按鈕時,表單的Click事件不會發(fā)生,只有命令按鈕的Click事件發(fā)生。

      講述

      對象的絕對引用15分鐘

       

       

       

       

       

       

       

       

       

      對象的相對引用10分鐘

       

       

       

       

       

         

       

      設(shè)置屬性10分鐘

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

      調(diào)用方法程序15分鐘

       

       

       

       

       

      響應(yīng)事件20分鐘


      CopyRight ? 2016 宣城市信息工程學(xué)校 地址:宣城市梅溪路902號 后臺登錄

      郵編:242000 電話(傳真):0563-2629508 如有問題,歡迎惠賜 Email:xclmq@163.com

      日韩无码第一页,一区_97资源人妻碰碰碰_有码无码人妻Av_午夜亚洲国产理论片2020网站 亚洲无码片AV一级 岛国av无码专区免费看
      <style id="uedzd"></style>
    3. <style id="uedzd"></style>
    4. <dfn id="uedzd"></dfn>
    5. <dfn id="uedzd"></dfn>
      1. <ruby id="uedzd"></ruby>
        <ruby id="uedzd"></ruby>