濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > 遭遇ASP類(lèi)的事件設(shè)計(jì)

遭遇ASP類(lèi)的事件設(shè)計(jì)

熱門(mén)標(biāo)簽:鳳臺(tái)百度地圖標(biāo)注店 修改地圖標(biāo)注 萊西電子地圖標(biāo)注 縣域地圖標(biāo)注打印店 個(gè)人可以辦理400電話么 武夷山旅游地圖標(biāo)注 金昌電話機(jī)器人價(jià)格 怎么在地圖標(biāo)注自己 外呼系統(tǒng)API接口
作者的blog: http://blog.csdn.net/oyiboy/
我之所以還是要宣揚(yáng)用MVC來(lái)開(kāi)發(fā)ASP,只是想讓面向過(guò)程的思考方式變成面向?qū)ο蟮乃伎挤绞?,這個(gè)對(duì)于任何一種語(yǔ)言的開(kāi)發(fā)員來(lái)說(shuō)都是有好處的。
MVC是個(gè)標(biāo)準(zhǔn)模型,ASP要實(shí)現(xiàn)似乎真的是很困難,但是標(biāo)準(zhǔn)是標(biāo)準(zhǔn),運(yùn)用是運(yùn)用,既然ASP要實(shí)現(xiàn)這個(gè)模型很難,那可以嘗試著將MVC模型變形成適合自己的模型。
  “不管白貓黑貓能逮到耗子的就是好貓?!倍鴮?duì)于我們開(kāi)發(fā)者來(lái)說(shuō),不管是什么模型,能正確的指引我們的思路,完美完成項(xiàng)目的模型就是好模型。畢竟用戶最終用是我們的程序而不是我們的模型。
  這段時(shí)間由于接觸到MVC,也知道了Class的運(yùn)用方式,遭遇到了事件的設(shè)計(jì)。
  其實(shí)具體的事件設(shè)計(jì)方式我也不是很明白,在QQ里newskyline跟我說(shuō)了,ASP沒(méi)辦法作Class的事件,
只能模擬。而我呢。算是為達(dá)目的不則手段(寫(xiě)程序而以)的,認(rèn)為模擬也好,非模擬也行,只要達(dá)到我想要的效果就是好東西。
  模擬事件的方式有兩種:
  第一種:借用了execute/eval,用一個(gè)屬性收取函數(shù)名的字符,然后使用execute/eval來(lái)運(yùn)行函數(shù)。
    如:
      obj.OnDataUpdateStart="CheckData"
     其構(gòu)造為:
      public property let OnDataUpdateStart(byval A_strValue)
      ''在此省略了對(duì)A_strValue的一些嚴(yán)謹(jǐn)?shù)尿?yàn)證代碼。
        p_strOnDataUpdateStart=A_strValue
      end property
    
     事件是觸發(fā)為:
      public sub DataUpdate()
        ''...忽略過(guò)程...
        execute(p_strOnDataUpdateStart  "(參數(shù)變量一,參數(shù)變量二)")
        ''...忽略過(guò)程...
      end sub
    稍微提一下execute和eval的不同點(diǎn)。
    同樣的“x=y”。execute("x=y")的結(jié)果是將y值賦給x,而eval("x=y")則會(huì)返回一個(gè)Boolean值,表示x與y的測(cè)試結(jié)果,如x等于y則返回true,反之返回false。
  第二種:借用函數(shù)指針GetRef,在vbs手冊(cè)的解釋上來(lái)看就是綁定事件專(zhuān)用的函數(shù)。具體解釋如下:
    “返回一個(gè)指向一過(guò)程的引用,此過(guò)程可綁定某事件。”
    具體運(yùn)用例子,如:
      obj.OnDataUpdateStart="CheckData"
      其構(gòu)造則改為:
        public OnDataUpdateStart  ''其實(shí)可以使用get/let模式,想偷懶了,所以直接聲明一個(gè)公開(kāi)變量來(lái)傳遞了。
      事件觸發(fā)則改為:
        public sub DataUpdate()
          ''...忽略過(guò)程...
          set me.OnDataUpdateStart=GetRef(OnDataUpdateStart)
          me.OnDataUpdateStart("參數(shù)變量一","參數(shù)變量二")
          ''...忽略過(guò)程...
        end sub
  以上兩種方式可以實(shí)現(xiàn)事件綁定,但是,從解釋上來(lái)說(shuō),我比較推崇第二種,相對(duì)于execute/eval來(lái)說(shuō)更為嚴(yán)謹(jǐn)一些。 

標(biāo)簽:上海 涼山 南京 清遠(yuǎn) 楚雄 赤峰 通遼 邢臺(tái)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《遭遇ASP類(lèi)的事件設(shè)計(jì)》,本文關(guān)鍵詞  遭遇,ASP,類(lèi),的,事件,設(shè)計(jì),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《遭遇ASP類(lèi)的事件設(shè)計(jì)》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于遭遇ASP類(lèi)的事件設(shè)計(jì)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    水富县| 永吉县| 呈贡县| 崇文区| 贡嘎县| 白银市| 崇礼县| 巩义市| 安庆市| 渝中区| 偃师市| 常宁市| 栖霞市| 青川县| 平原县| 桓仁| 宾川县| 深州市| 景泰县| 凯里市| 忻州市| 文成县| 邯郸市| 辽宁省| 会泽县| 武鸣县| 麻城市| 谷城县| 通许县| 永靖县| 科技| 崇左市| 南平市| 洞口县| 台安县| 偃师市| 阿克陶县| 玉林市| 分宜县| 沽源县| 旬阳县|