Сведения о программировании Visio Viewer

Visio Viewer — это элемент управления ActiveX, который позволяет открывать, просматривать или печатать документы Visio, даже если у вас нет Visio. Однако вы не можете изменить, сохранить или создать новый документ Visio в Visio Viewer. Для этого вам потребуется Visio.

Visio Viewer предоставляет интерфейс прикладного программирования (API), который позволяет разработчикам решений выполнять многочисленные задачи, в том числе следующие:

  • Загрузка и выгрузка документов Visio.
  • Выделите фигуры.
  • Следите за гиперссылками.
  • Отображение различных диалоговых окон Visio Viewer для пользователя.
  • Настройте размер и положение окна Visio Viewer.
  • Настройте пользовательский интерфейс, изменив цвета переднего плана и фона, а также отображая или скрывая сетку и полосы прокрутки.
  • Управление цветом и прозрачностью слоев в документе.
  • Управление цветом и видимостью разметки рецензента (комментариев).
  • Настройте панель инструментов, добавив или удалив кнопки.
  • Реагирование на действия пользователя в интерфейсе Visio Viewer.

Программирование Visio Viewer в Visual Basic 6.0

Используйте Visual Basic 6.0 для создания экземпляров элемента управления Visio Viewer в различных контейнерах (например, в форме Windows). Прежде чем это сделать, необходимо получить ссылку на API Visio Viewer.

Чтобы получить ссылку на API Visio Viewer в проекте Visual Basic 6.0, выполните следующие действия.

Получение ссылки на API Visio Viewer в проекте Visual Basic 6.0

  1. Откройте Visual Basic 6.0. В Windows Vista или Windows 7 щелкните правой кнопкой мыши ярлык программы и выберите запуск от имени администратора.

  2. В Visual Basic 6.0 откройте новый проект EXE уровня "Стандартный ".

  3. В проекте щелкните правой кнопкой мыши панель элементов, выберите Компоненты, выберите Microsoft Visio Viewer библиотеки типов версии 14.0 и нажмите кнопку ОК.

  4. Перед компиляцией кода в меню Проект выберите [имя проекта] Свойства.

  5. На вкладке Сделать убедитесь, что не выбран параметр Удалить сведения о неиспользуемых элементах ActiveX .

В следующем коде показано, как создать экземпляр Visio Viewer в форме в Visual Basic 6.0. Он создает элемент управления Visio Viewer, отображает диалоговое окно Свойства и параметры, задает расположение, размер и видимость элемента управления в форме, а также загружает в элемент управления документ с именем MyFile.vsd.

Добавьте следующий код в созданный проект.

Dim Viewer1 As VisioViewerCtl.Viewer

Private Sub Form_Load()
    
    Set Viewer1 = Form1.Controls.Add("VisioViewer.Viewer", "Viewer1", Form1)

    Viewer1.Visible = True
    Viewer1.Left = 200
    Viewer1.SRC = "C:\Users\<variable>username</variable>\Documents\MyFile.vsd"

    Viewer1.Height = 5000
    Viewer1.Width = 5000
    Viewer1.DisplayPropertyDialog

End Sub

Программирование Visio Viewer на веб-странице HTML

Используйте элемент управления Visio Viewer для внедрения документа Visio на веб-страницу, вручную вставляя теги и параметры в исходный код страницы. Для написания исходного кода можно использовать текстовый редактор, например Блокнот, или любое другое приложение, создающее веб-страницы, например Microsoft Expression Web 3 или SharePoint Designer.

Любое из свойств Visio Viewer можно задать с помощью тега PARAM, как показано в следующем примере кода, который задает свойство Src Visio Viewer.

Помните, что, поскольку Visio Viewer является элементом ActiveX, его поведение зависит от параметров безопасности Internet Explorer.

В следующем коде показано, как открыть файл документа Visio в элементе управления Visio Viewer на веб-странице. Он задает высоту и ширину элемента управления Visio Viewer на странице и загружает исходный документ в элемент управления .

Скопируйте код в файл в текстовом редакторе и сохраните полученный документ как HTM-файл. Документ Visio SalesData.vsd, на который ссылается параметр Src , должен находиться в той же папке, что и файл HTM.

<html>
<OBJECT id="DrawingControl1"
    height=400 
    width=600
    classid="clsid:279D6C9A-652E-4833-BEFC-312CA8887857" VIEWASTEXT>
<PARAM NAME="Src" VALUE="SalesData.vsd">
</OBJECT>
</html>

Программирование Visio Viewer в управляемом коде

Используйте управляемый код для создания экземпляров элемента управления Visio Viewer в различных контейнерах, например в форме Windows. Прежде чем это сделать, необходимо получить ссылку на API Visio Viewer.

Чтобы получить ссылку на API Visio Viewer в проекте Visual Studio 2008, выполните следующие действия.

Получение ссылки на API Visio Viewer в проекте Visual Studio

  1. В меню Пуск наведите указатель мыши на пункт Все программы, выберите Стандартные, а затем выберите Командная строка , чтобы открыть окно командной строки.

  2. В окне командной строки перейдите во вложенную папку Microsoft Office/Office 14 папки Program Files.

  3. Скопируйте файл VViewer.dll в папку, в которую у вас есть разрешение на запись новых файлов (например, в папку пользователя).

  4. Закройте окно командной строки и откройте окно командной строки Visual Studio 2008. (В меню Пуск наведите указатель мыши на пункт Все программы, выберите Microsoft Visual Studio 2008, выберите Инструменты Visual Studio, а затем — Командная строка Visual Studio 2008.

  5. В окне командной строки Visual Studio 2008 перейдите к папке, в которую вы скопировали Visio Viewer DLL-файл.

  6. В этой папке введите AxImp.exe vviewer.dll , чтобы создать несколько файлов, включая AxVisioViewer.dll.

  7. В Visual Studio 2008 откройте новый проект приложения Windows Forms.

  8. В проекте в меню Проект выберите Добавить ссылку, а затем — Обзор.

  9. Перейдите в папку, в которой вы создали файл AxVisioViewer.dll, выберите этот файл в списке и нажмите кнопку ОК.

В проекте Visual Studio в файле Form1.cs добавьте следующий код, чтобы создать экземпляр элемента управления Visio Viewer, задать некоторые его свойства и загрузить тестовый файл в элемент управления . Этот код предполагает, что у вас есть файл Visio с именем Test.vsd в папке Документы по указанному пути. Измените путь и имена файлов соответствующим образом для компьютера.

<code language="CS" type="developer">public partial class Form1 : Form
    {
        private AxVisioViewer.AxViewer viewer;

        /// &lt;summary&gt;
        /// The Visio Viewer OM
        /// &lt;/summary&gt;
        public AxVisioViewer.AxViewer Viewer
        {
            get
            {
                return this.viewer;
            }
        }

        public Form1()
        {
            this.InitializeComponent();
            this.Resize += new EventHandler(this.UpdateSize);
            this.viewer = new AxVisioViewer.AxViewer();
            this.Controls.Add(this.viewer);
            this.viewer.CreateControl();

            this.viewer.Location = new Point(0, 0);
            this.UpdateSize(null, null);
         
        }

        public void UpdateSize(object obj, EventArgs ea)
        {
            this.viewer.ClientSize = new Size(this.ClientSize.Width - 150, this.ClientSize.Height - 150);
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            this.viewer.Load("C:\\users\\username\\documents\\viewer\\test.vsd");

        }        

    }
</code>

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.