• <menu id="w2i4a"></menu>
  • logo VARCHART XGantt 2019教程

    文檔首頁(yè)>>VARCHART XGantt 2019教程>>VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(下)

    VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(下)


    VARCHART XGantt是一個(gè)交互式的甘特圖控件,其模塊化的設(shè)計(jì)讓您可以創(chuàng)建滿足您和您的客戶所需求的應(yīng)用程序。(我們領(lǐng)先的甘特圖控件VARCHART XGantt可用于.NET,ActiveX和ASP.NET應(yīng)用程序。)除此之外,同時(shí)還具有一個(gè)穩(wěn)定可靠的甘特圖工具,在編寫第一行代碼之前,您就可以知道是否可以滿足客戶的需求。

    點(diǎn)擊下載VARCHART XGantt免費(fèi)版

    在啟用實(shí)時(shí)更新的拖放交互過(guò)程中,接收和處理有關(guān)對(duì)象的信息將非常有用。本文介紹該教程的后面一部分內(nèi)容,內(nèi)容緊接前文哦~

    交互事件

    VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(下)

    前面所述,現(xiàn)在在交互過(guò)程中和交互結(jié)束時(shí)引發(fā)對(duì)象事件。事件處理程序的簽名,例如這里的VcNodeModifying事件的值沒(méi)有變化。但是如何識(shí)別事件是在交互過(guò)程中還是在交互結(jié)束時(shí)引發(fā)的?

    這可能很重要,因?yàn)槔纾⒎菍⑹髽?biāo)移動(dòng)引起的每一個(gè)修改都存儲(chǔ)到數(shù)據(jù)庫(kù)中:這將導(dǎo)致過(guò)多的耗時(shí)工作。當(dāng)然,僅應(yīng)在操作完成后存儲(chǔ)數(shù)據(jù)。

    現(xiàn)在,可以通過(guò)伴隨并描述交互的一些新事件來(lái)解決此問(wèn)題,并且可以在交互過(guò)程中的對(duì)象事件中對(duì)其進(jìn)行評(píng)估。

    按下鼠標(biāo)左鍵后,VcInteractionStarted事件將傳遞有關(guān)鼠標(biāo)鍵所在的對(duì)象(對(duì)象和對(duì)象類型)以及該對(duì)象發(fā)生了什么的信息。交互所需的一切都可以準(zhǔn)備好。

    提示:還可以在此處切換特定于對(duì)象和上下文的更新行為。在極端情況下,一個(gè)節(jié)點(diǎn)可能會(huì)完全動(dòng)態(tài)地做出反應(yīng),而另一個(gè)節(jié)點(diǎn)會(huì)帶有藍(lán)色的幻影幀。此外,相應(yīng)的設(shè)置(InInteractionEventsEnabled)允許有關(guān)是否在交互過(guò)程中也要發(fā)生對(duì)象事件的單獨(dú)決定。

    示例:節(jié)點(diǎn)

    buy

    • 對(duì)象:NodeObject

    • 類型:vcObjTypeNodeInDiagram

    • OperationMode:vcIIMMoveNode

    • 按下鼠標(biāo)左鍵時(shí),VcInteractionStarted事件顯示圖表中節(jié)點(diǎn)的移動(dòng)已經(jīng)開始。

    • 應(yīng)該伴隨交互的信息或元素可以在此處初始化。

    創(chuàng)建對(duì)象

    • 在某些互動(dòng)中,最初沒(méi)有可用的對(duì)象,例如創(chuàng)建節(jié)點(diǎn)或框時(shí)。在這種情況下,事件VcInteractionObjectChanged會(huì)在內(nèi)部創(chuàng)建對(duì)象后立即發(fā)生,這是涉及節(jié)點(diǎn)的實(shí)際圖表節(jié)點(diǎn)。

    • 該動(dòng)作的結(jié)束由VcInteractionEnded事件指示。在交互過(guò)程中使用的所有其他元素都可以在此處刪除。

    • 使用交互事件創(chuàng)建新對(duì)象時(shí),過(guò)程如下:

    • VcInteractionStarted

    • VcInteractionObjectChanged

    • 修改/修改的事件,顯示創(chuàng)建元素時(shí)的修改

    • 創(chuàng)建和創(chuàng)建事件

    • VcInteractionEnded。

    互動(dòng)期間激活了非交互事件

    VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(下)

    如果在交互過(guò)程中也啟用了交互事件(vcGantt.InInteractionEventsEnabled = true),則釋放鼠標(biāo)鍵時(shí)將有一個(gè)附加事件,指示這些事件的結(jié)束:VcInInteractionEventsEnded。

    這使得將交互過(guò)程中引發(fā)的對(duì)象事件與交互結(jié)束時(shí)引發(fā)的對(duì)象事件區(qū)分開來(lái)變得容易。如果引發(fā)此事件,則下一個(gè)對(duì)象事件將是結(jié)束事件。

    可能的情況

    換句話說(shuō),使用交互事件時(shí)有兩種可能的情況。

    控制與以下對(duì)象的交互:

    • 非交互事件已關(guān)閉

    • 非交互事件已打開

    停用非交互事件時(shí)與所涉及對(duì)象的事件進(jìn)行協(xié)作

    VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(下)

    屏幕截圖顯示了在關(guān)閉非交互事件(vcGantt.InInteractionEventsEnabled = false)時(shí),Interaction(黃色閃電)和對(duì)象事件(赭色和綠色閃電)如何協(xié)作:

    交互開始,由InteractionStarted事件指示。

    釋放鼠標(biāo)鍵時(shí),對(duì)象事件首先出現(xiàn),例如VcNodeModifyingVcNodeModified帶有節(jié)點(diǎn)。換句話說(shuō),這是關(guān)于對(duì)象事件的舊行為,因此,如果不使用InInteraction事件,則無(wú)需修改對(duì)象事件中的現(xiàn)有代碼。

    交互的結(jié)束由VcInteractionEnded事件指示。

    與相關(guān)對(duì)象的事件合作,而InInteraction事件已激活

    VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(下)

    如果使用了InInteraction事件,則會(huì)出現(xiàn)以下事件:

    • VcInteractionStarted在按下鼠標(biāo)左鍵時(shí)開始

    • 鼠標(biāo)移動(dòng)時(shí)的Modifying和Modified事件

    • VcInInteractionEventsEnded,然后釋放鼠標(biāo)左鍵時(shí)完成對(duì)象事件

    • VcInteractionEnded指示交互結(jié)束。

    示例:移動(dòng)節(jié)點(diǎn):

    當(dāng)鼠標(biāo)光標(biāo)位于某個(gè)節(jié)點(diǎn)上時(shí),如果按下鼠標(biāo)左鍵,則交互開始。出現(xiàn)事件VcInteractionStarted

    移動(dòng)鼠標(biāo)時(shí)出現(xiàn)的事件表示實(shí)際節(jié)點(diǎn)的狀態(tài)(VcNodeModifying),而在更新時(shí)(VcNodeModified1>)圖表節(jié)點(diǎn)。

    釋放鼠標(biāo)鍵時(shí),將出現(xiàn)VcInInteractionEventsEnded事件

    對(duì)象事件VcNodeModifyingVcNodeModified指示交互結(jié)束時(shí)圖表節(jié)點(diǎn)的狀態(tài)。

    最后出現(xiàn)的是VcInteractionEnded事件。

    示例:設(shè)置節(jié)點(diǎn)更新行為“鼠標(biāo)移動(dòng)”時(shí)對(duì)象事件的行為

    VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(下)

    由于VcNodeModifying事件允許修改EventReturnstatus(e.ReturnStatus),因此現(xiàn)在也可以在交互過(guò)程中完成此操作。

    因此,如果e.ReturnStatus = ReturnStatusFalse指示所提供的數(shù)據(jù)不是“有效的”,則圖表中的對(duì)象將不會(huì)隨著下一次可能的更新而刷新,并且不會(huì)引發(fā)相應(yīng)的VcNodeModified事件。

    通過(guò)將對(duì)象保留在其舊位置并通過(guò)幻像指示當(dāng)前位置,可以看到該圖像。

    通過(guò)實(shí)物可視化的對(duì)象(當(dāng)前僅節(jié)點(diǎn)和節(jié)點(diǎn)框)的狀態(tài)指示如下:

    當(dāng)前位置通過(guò)變亮的實(shí)部來(lái)可視化,事件中仍會(huì)提供其值。

    最后一個(gè)有效狀態(tài),即最后一個(gè)未將ReturnStatusFalse返回為e.ReturnStatus的狀態(tài),由另一個(gè)實(shí)數(shù)表示,表示那里“被卡住了”。這樣,兩條信息都可以可視化。

    VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(下)

    在該節(jié)點(diǎn)上,最后一個(gè)有效狀態(tài)的值(即被卡住的實(shí)數(shù))與VcNodeModifying-Event中的e.OldNode對(duì)應(yīng)。如果VcInInteractionEventsEnded之前的最后一個(gè)VcNodeModifying事件以ReturnStatusFalse完成,則將提供最后一個(gè)有效狀態(tài)在結(jié)束事件中。

    可以決定是否接受此狀態(tài)。如果在結(jié)束事件中設(shè)置ReturnStatusFalse,則將恢復(fù)原始的開始狀態(tài)。

    實(shí)用技巧:我們建議創(chuàng)建一個(gè)“Interactioning InteractionInfo”對(duì)象,該對(duì)象提供有關(guān)事件中交互的所需信息,并可以進(jìn)行相應(yīng)的評(píng)估。

    本教程內(nèi)容到這里就結(jié)束了,感興趣的朋友可以繼續(xù)關(guān)注我們哦,我們會(huì)不斷更新更多內(nèi)容~您也可以點(diǎn)擊下載VARCHART XGantt試用版進(jìn)行評(píng)估~

    相關(guān)內(nèi)容推薦:

    VARCHART XGantt用戶手冊(cè)(ActiveX版):如何操作互動(dòng)事件(上)

    VARCHART XGantt用戶手冊(cè)>>>


    想要購(gòu)買VARCHART XGantt正版授權(quán),或了解更多產(chǎn)品信息請(qǐng)點(diǎn)擊“咨詢?cè)诰€客服”

    850×682.png


    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();