4.2.1. Позиция и размеры окна документа

Источник здесь.[перевод не проверен];[перевёл Андрей Бушман]

    Используйте объект Document (документ) для изменения позиции и размеров любого окна документа. Окно документа может быть минимизировано или максимизировано посредством использования свойства WindowState (состояние окна). Посредством этого же свойства вы можете узнать о текущем статусе окна.

Размеры активного окна документа

    Этот пример использует свойства Location (положение) и Size (размер) для назначения определённой позиции размещения и размеров окна документа (400 пикселей по ширине и 400 пикселей по высоте).

Код VB.NET

   1:  Imports Autodesk.AutoCAD.Runtime
   2:  Imports Autodesk.AutoCAD.ApplicationServices
   3:  Imports Autodesk.AutoCAD.Windows 
   4:   
   5:  <CommandMethod("SizeDocumentWindow")> _
   6:  Public Sub SizeDocumentWindow()
   7:   
   8:    '' Размер окна документа
   9:    Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
  10:    acDoc.Window.WindowState = Window.State.Normal 
  11:   
  12:    '' Устанавливаем позицию окна докуметна
  13:    Dim ptDoc As Point = New Point(0, 0)
  14:    acDoc.Window.Location = ptDoc 
  15:   
  16:    '' Устанавливаем размеры окна документа
  17:    Dim szDoc As Size = New Size(400, 400)
  18:    acDoc.Window.Size = szDoc
  19:  End Sub

Код C#

   1:  using Autodesk.AutoCAD.Runtime;
   2:  using Autodesk.AutoCAD.ApplicationServices;
   3:  using Autodesk.AutoCAD.Windows; 
   4:   
   5:  [CommandMethod("SizeDocumentWindow")]
   6:  public static void SizeDocumentWindow()
   7:  {
   8:    // Размеры окна документа
   9:    Document acDoc = Application.DocumentManager.MdiActiveDocument;
  10:    acDoc.Window.WindowState = Window.State.Normal; 
  11:   
  12:    // Установка позиции окна документа
  13:    Point ptDoc  = new Point(0, 0);
  14:    acDoc.Window.Location = ptDoc; 
  15:   
  16:    // Установка размеров окна документа
  17:    Size szDoc = new Size(400, 400);
  18:    acDoc.Window.Size = szDoc;
  19:  }

Код VBA / ActiveX

   1:  Sub SizeDocumentWindow()
   2:      ThisDrawing.Width = 400
   3:      ThisDrawing.Height = 400
   4:  End Sub

Минимизация и максимизация окна активного документа

Код VB.NET

   1:  Imports Autodesk.AutoCAD.Runtime
   2:  Imports Autodesk.AutoCAD.ApplicationServices
   3:  Imports Autodesk.AutoCAD.Windows 
   4:   
   5:  <CommandMethod("MinMaxDocumentWindow")> _
   6:  Public Sub MinMaxDocumentWindow()
   7:    Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument 
   8:   
   9:    '' Минимизация окна документа
  10:    acDoc.Window.WindowState = Window.State.Minimized
  11:    MsgBox("Минимально", MsgBoxStyle.SystemModal, "MinMax") 
  12:   
  13:    '' Максимизация окна документа
  14:    acDoc.Window.WindowState = Window.State.Maximized
  15:    MsgBox("Максимально", MsgBoxStyle.SystemModal, "MinMax")
  16:  End Sub

Код C#

   1:  using Autodesk.AutoCAD.Runtime;
   2:  using Autodesk.AutoCAD.ApplicationServices;
   3:  using Autodesk.AutoCAD.Windows; 
   4:   
   5:  [CommandMethod("MinMaxDocumentWindow")]
   6:  public static void MinMaxDocumentWindow()
   7:  {
   8:    Document acDoc = Application.DocumentManager.MdiActiveDocument; 
   9:   
  10:    // Минимизируем окно приложения
  11:    acDoc.Window.WindowState = Window.State.Minimized;
  12:    System.Windows.Forms.MessageBox.Show("Минимизировано" , "MinMax"); 
  13:   
  14:    // Максимизируем окно приложения
  15:    acDoc.Window.WindowState = Window.State.Maximized;
  16:    System.Windows.Forms.MessageBox.Show("Максимизировано" , "MinMax");
  17:  }

Код VBA / ActiveX

   1:  Sub MinMaxDocumentWindow()
   2:      '' Минимизируем окно документа
   3:      ThisDrawing.WindowState = acMin
   4:      MsgBox "Минимизировано" 
   5:      '' Максимизируем окно документа
   6:      ThisDrawing.WindowState = acMax
   7:      MsgBox "Максимизировано"
   8:  End Sub

Получение текущего статуса окна активного документа

Код VB.NET

   1:  Imports Autodesk.AutoCAD.Runtime
   2:  Imports Autodesk.AutoCAD.ApplicationServices
   3:  Imports Autodesk.AutoCAD.Windows 
   4:   
   5:  <CommandMethod("CurrentDocWindowState")> _
   6:  Public Sub CurrentDocWindowState()
   7:    Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument 
   8:    System.Windows.Forms.MessageBox.Show("The document window is " & _
   9:    acDoc.Window.WindowState.ToString(), "Window State")
  10:  End Sub

Код C#

   1:  using Autodesk.AutoCAD.Runtime;
   2:  using Autodesk.AutoCAD.ApplicationServices;
   3:  using Autodesk.AutoCAD.Windows;
   4:   
   5:  [CommandMethod("CurrentDocWindowState")]
   6:  public static void CurrentDocWindowState()
   7:  {
   8:    Document acDoc = Application.DocumentManager.MdiActiveDocument; 
   9:    System.Windows.Forms.MessageBox.Show("The document window is " +
  10:    acDoc.Window.WindowState.ToString(), "Window State");
  11:  }

Код VBA / ActiveX

   1:  Sub CurrentDocWindowState()
   2:      Dim CurrWindowState As Integer
   3:      Dim msg As String
   4:      CurrWindowState = ThisDrawing.WindowState
   5:      msg = Choose(CurrWindowState, "Normal", _
   6:                   "Minimized", "Maximized")
   7:      MsgBox "The document window is " + msg
   8:  End Sub

Comments