成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Visual Studio 2008上實現Visio自動化

開發 后端 自動化
本文將介紹的是Visual Studio 2008上實現Visio自動化,包括一些模板的使用和自動化處理。

51CTO向您推薦《體驗Visual Studio 2008展望2010》專題。希望這個專題能讓您更好的使用Visual Studio 2008。

Visio是微軟旗下的一款圖表制作與流程管理工具,用來幫助IT和商務人員來可視化的分析和交流復雜信息。而Visual Studio則是一個應用程序的可視化開發平臺。這兩個互不搭界的內容,他們會有交叉點嗎?

微軟將這變為了可能。簡單的說,在Visual Studio中提供了一些項目模板。這些模板可以幫助用戶來創建用于Visio的應用程序外接程序。而這些外接程序又可以幫助Visio直線自動化、擴展Visio的功能等等。通過應用程序級外接程序體系結構將兩個產品緊緊的聯系在一起。筆者日常在項目管理中,經常需要使用Visual Studio工具來開發一些Visio的個性化功能。在這里就將筆者的經驗跟大家分享一下,供各位讀者參考。

一、Visual Studio可以給Visio帶來哪些改善。

簡單的說,通過Visual Studio來讓Visio實現自動化,主要是通過API來完成的。這是一個原則性的內容,筆者先要強調一下。雖然也可以通過其他方式來實現,但是并不建議。因為這會增加工程的復雜性。一般來說,大部分任務都可以通過API來編寫代碼完成。筆者常用的功能有以下幾個。

一是根據業務邏輯和用戶的輸入管理Visio中的形狀。如筆者使用Visio來管理用戶的流程制作。流程具有一定的步驟。當用戶在輸入信息的時候,如果每有按步驟來。如跳過了一個步驟,那么當用戶輸入信息時就可以在界面上探出一個問號的形狀。這可以提醒用戶,必須按流程來輸入數據。

二是可以用來控制關系圖的可視化效果。在跟其他用戶通過Visio來進行信息交流分析的時候,往往需要根據實際情況來控制關系圖的可視化效果。如某個對象的平移或者縮放。一個比較簡單的例子,就是將鼠標移動到某個對象上,或則單擊,這個對象會自動擴大。這可以讓其他用戶更加清晰的看到相關的內容。

三是將外部的數據導入到Visio中。如果需要將Word等文檔的內容導入到Visio中,則可以使用其自帶的導入工具。但是如果需要將其他的文檔,如ACD文件,則需要開發其他的接口。如果有這個需求的話,使用Visual Studio來完成,是一件比較輕松的事情。

以上三點可能是在實際工作中經常會遇到的需求。當然這兩個產品之間的合作不限于這些方面,可能還有更多。由于工作經驗的限制,筆者只強調這幾點。如果大家還有比較典型的應用,希望各位可以分享出來,大家共同進步。

二、Visio與Visual Studio之間交互的渠道。

本來要擴展某個應用程序的功能是一件比較復雜的工作,因為其需要考慮到方方面面的內容。而現在借助Visual Studio來實現Visio的自動化,則是一件相對簡單的工作。這主要是因為他們提供了一些可以相互交互的對象。這些對象排列在一個與用戶界面密切相關的層次結構中。這些對象就好像是一道道門。通道已經有了,現在主要的問題就是如何配一個合適的鑰匙。

根據筆者的經驗,在通過VisualStudio與Visio打交道的時候,主要需要用到三個對象。分別是Application對象、Document對象、Page對象。如果用戶有這個需求,那么首先需要做的就是了解這個三個對象,特別是需要知道,這三個對象可以分別實現什么樣的功能。只有如此,當用戶提出需求的時候,Visual Studio管理員才能夠對癥下藥,選擇合適的對象。

其中Application對象它表示Visio應用程序,它的所有成員通常作為一個整體應用于Viso,是另外兩個對象的父級。而Document對象與Page對象則是具體的對象。前者是Visio編程的中樞,它主要負責一個繪圖、模具和模板文件。而后者主要表示前景或者背景的繪圖區域。

筆者比較愿意將Application對象比喻成未來的丈母娘,后其余兩個對象就是他的女兒。而用戶就好像是白馬王子。當白馬王子要跟他的女兒結婚的話,必須要通過Application對象,或者經過其同意。只要他同意之后,以后這小兩口的日子怎么過(具體怎么操作與實現),就是他們之間的事情了。了解這三個對象之間的關系,對于我們后續的開發工作會有很大的幫助。

三、通過VS向Visio文檔中添加形狀。

了解上面三個對象的關系之后,下面筆者就好總結一下,通過VS向Visio發出各種問候所需要注意的內容。如通過VS向Visil文檔添加某個具體形狀,如判斷用的零星是怎么實現的,以及相關的注意事項。

如果向VS向Visio中添加形狀,簡單的說可以分為兩個步驟。

第一步:從Documents對象中查詢主控形狀。

這里需要注意一點,如果要通過VS向Visio文檔中添加某個形狀,有一個前提就是這個形狀必須已經存在于Documents對象中。也就是說,只能夠實現對已經存在對象的調用。如果用戶需求添加一些自定義的形狀,那么就需要一個額外的步驟。如可以在Visio中先通過添加功能將其加入到Documents對象中。然后再通過VS來調用。Documents對象在上面的內容中筆者已經強調過,它主要負責一個繪圖、模具和模板文件。也即是說,所有的形狀信息都是保存在這個對象中的。當VS向Visio文檔中添加某個形狀時,首先要做的就是在這個對象中進行查找,看自己需要添加的形狀是否在這個文件中。這里主要用到Documents.Masters集合。如果形狀比較多的話,為了提高查詢的速度,用戶可以通過索引或者主控形狀的名字來檢索主控形狀。下面這段代碼就是用來查詢形狀是否存在。

Visiostencil.masters.get_itemu(@”形狀的名字”)。

第二步:將需要的形狀添加到文檔中。

找到某個形狀之后,就需要將其加入到某個文件中。在加入這個操作的時候,我們需要至少指定兩個內容。一是將哪個形狀加入到這個文件中,二是將其放到哪個位置上去。有時候可能還需要指定一個內容,就是這個形狀要顯示的文本內容。雖然這個并不是必須的。如果有需要的話,最好一起來完成。具體來說,可以通過以下兩段代碼來完成。

Visiopage.drop(剛才查詢到的形狀,坐標X,坐標Y)

VisioStarshape.text=@”要顯示的內容”

注意以上三個語句往往需要連著用。第一個語句主要用來查詢所需要的形狀是否存在。第二個語句就是將剛查查詢到的形狀放置到文檔中(其使用的參數就是第一個語句種查詢出來的結果)。第三個語句就是往這個形狀中添加一些描述性的文本。一般來說,前兩個語句是必須的,而第三個語句是可選的。一般為了提高可讀性,往往將這個三個語句放到一起,如下面所示:

Visiostencil.masters.get_itemu(@”形狀的名字”);

Visiopage.drop(剛才查詢到的形狀,坐標X,坐標Y);

VisioStarshape.text=@”要顯示的內容”;

第一條語句主要用到了Documents對象,第二條語句用到了Page對象。這兩個對象份工合作,各自完成相關的動作。簡單的說,Documents對象是靜態的內容,或者只是一個文件,只要用來保存可用的形狀。而Page對象就是一些動作的集合,如添加某個形狀、刪除某個形狀、放大或者縮小某個形狀等等。對于形狀的具體操作,都需要通過Page對象來完成。為此對于Page對象中的各種方法,如Drop,管理人員必須要有十分詳細且精確的了解。否則的話,下面很多工作就都無法開展了。

通過上面這個簡單的案例,可以看出在Visual Studio平臺與Visio三個對象的幫助下,跟Visio打交道并沒有我們想象中的那么復雜。通過一段時間的練習與操作,相信各位讀者都可以輕松的掌握如何讓Visio實現自動化的技巧。這篇文章中提到的一些技巧與注意事項,能夠為大家這方面的改進帶來一定的幫助。

【編輯推薦】

 

  1. Windows 7下Visual Studio 2008安裝詳解
  2. Visual Studio 2008中三大問題的解決方法
  3. 不能不知的VS2008技巧與便捷
  4. 對VS2008簡介與日常使用
  5. 詳細分析VS2008專業版相關功能
責任編輯:彭凡 來源: IT專家網
相關推薦

2010-09-27 09:13:36

Visual Stud

2011-03-23 08:42:36

Visual Stud

2011-11-16 08:45:36

Visual Stud

2009-12-16 15:44:20

Visual Stud

2009-12-18 13:39:40

Visual Stud

2011-08-29 10:11:49

QTWindowsVisual Stud

2009-12-17 15:38:21

Visual Stud

2015-10-21 15:08:25

電纜自動化

2011-03-15 17:13:49

SQL Server 自動化數據采集

2009-04-16 17:14:52

2013-05-29 14:54:49

Visual Stud

2009-07-01 17:11:32

標記導航Visual Stud

2009-12-16 14:51:27

Visual Stud

2009-12-17 15:22:27

Visual Stud

2009-07-01 17:04:13

ListViewVisual Stud

2009-12-14 15:46:38

visual stud

2009-07-01 17:15:25

ListView數據排Visual Stud

2017-12-17 21:58:18

2009-12-02 17:22:16

Visual Stud

2009-12-11 17:20:36

Visual Stud
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本韩国电影免费观看 | 久久国产日韩 | 欧美综合在线视频 | 久在草| 国产精品久久片 | 欧美日韩在线视频一区 | 国产精久久久久久久妇剪断 | 欧美电影网 | 亚洲大片一区 | 国产一区二区免费 | 国产视频福利一区 | 午夜精品一区 | 国产在线看片 | 羞羞视频网站免费看 | 四色成人av永久网址 | 怡红院成人在线视频 | 国产精品久久国产精品久久 | 亚洲专区在线 | 综合久久av | 51ⅴ精品国产91久久久久久 | 99热精品在线观看 | 黄网站免费观看 | 国产精品久久久久久福利一牛影视 | 一区二区三区精品视频 | 日韩有码一区 | 婷婷成人在线 | 成人在线欧美 | 亚洲精品成人在线 | 涩涩鲁亚洲精品一区二区 | 日本视频在线 | 一区视频| 国产在线观看av | 尤物在线精品视频 | 国产精品视频综合 | 国产精品久久久久久久粉嫩 | 亚洲成人一区二区 | 五月网婷婷 | 中文字幕在线播放不卡 | 午夜网址| 久久欧美高清二区三区 | 国产日韩欧美激情 |