翻譯|其它|編輯:吳園園|2019-11-14 13:42:42.773|閱讀 250 次
概述:流程圖控件MindFusion.Diagramming for ActiveX常見問題集錦(一):刪除表格等
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
MindFusion.Diagramming for ActiveX(之前版本叫FlowChartX)是一個ActiveX 控件。它能幫助你創建工作流圖,流程圖和圖表處理,數據庫實體關系圖表,組織,層次和關系圖表,網絡配置,圖表和樹。
最新版本4.9.5發布,包含多項新功能改進和bug修復,點擊查看詳情
點擊下載MindFusion.Diagramming for ActiveX最新試用版
點擊查看下一篇:
流程圖控件MindFusion.Diagramming for ActiveX常見問題集錦(下):設置鼠標光標等
問:有更好的方法來在VB中使用控件實現OLE拖放?
答:有一個名為drProgrControlVB的新拖放模式,它具有與drProgrControl相同的功能。區別在于,將屬性設置為VB模式時將觸發的事件將參數IVBDataObject接口與自動化兼容。FlowChartX VB事件的名稱與在drProgrControl模式下觸發的事件名稱相同,只是將“ VB”后綴添加到它們中。
問:如果嘗試訪問傳遞到RequestCreateArrow事件中的箭頭的DestinationBox屬性,則會遇到應用程序錯誤!
答:觸發RequestCreateArrow后,箭頭的DestinationBox對象仍未設置。我們添加了一個名為ExpectedDestination的新箭頭屬性,該屬性僅在RequestCreateArrow事件處理程序中有效。它指的是如果驗證了箭頭創建后將成為箭頭目標對象的框或表。
問:我無法訪問box對象的Font屬性,每次都會引發錯誤。
答:默認情況下,所有對象(表格,框,箭頭)的字體均設置為null / nothing。當圖表對象的字體為null時,流程圖的字體用于呈現對象的文本。這個想法是通過不為每個圖表元素分配字體來減少內存使用。當對象的字體為null時,它將使用流程圖的Font呈現其文本。因此,如果您需要為不同的對象使用不同的字體,則應首先使用VB SET語句將它們設置為某個值,然后您就可以無錯誤地訪問Font屬性。
問:我希望能夠刪除表格及其相關的子表格。除非有可能創建一個組并使用DestroyGroup方法,否則我看不到能夠做到這一點的方法。
答:您可以使用遞歸算法對表進行級聯刪除,如下所示:
sub CascadingDelete(tbl as Table) dim i as integer `this will delete all child tables For i = 1 To tbl.GetRelatedTables(1, rlManyToOne).Count CascadingDelete tbl.GetRelatedTables(1, rlManyToOne).Item(0) Next i `the current table has no more children `so we can delete it fc.DeleteItem tbl end sub sub someSub if fc.ActiveItem = itTable then CascadingDelete ActiveTable end if end sub
問:我的系統允許用戶構造流程圖,但是我想在允許放置箭頭之前檢查周期。我一直在使用RequestCreateArrow來基于前面和后面的對象驗證箭頭,但是直到最終放置箭頭后,我才能使用FindCycle函數。您知道解決此問題的方法嗎?
答:您可以使用FindShortestPath方法來檢查是否存在一個帶有正在創建的箭頭的循環。例如,如果在框b1-> b2之間創建了箭頭,則如果FindShortestPath(b2,b1)找到一條路徑,則意味著將箭頭添加到該路徑將導致循環(箭頭連接了箭頭的兩端)找到路徑)。
另一個解決方案:如果正在創建從b2到b1的箭頭,則如果FindShortestPath(b1,b2)返回路徑,則再次意味著添加箭頭將導致循環。
因此,在您的RequestCreateArrow事件處理程序中,您可以使用以下代碼:
if FindShortestPath(arrow.SourceBox, ExpectedDestination) = Nothing then create = true else create = false end if
問:我想以編程方式更改對象的位置(例如,移動盒子)。如何使用VB6做到這一點?
答:可以使用SetRect方法更改框和表的位置。
MindFusion.Diagramming for ActiveX現已加入在線訂購,現在搶購立享優惠!
想要購買MindFusion.Diagramming for ActiveX正版授權的朋友可以。
更多精彩內容,敬請關注下方的微信公眾號,及時獲取產品最新資訊▼▼▼
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: