using Autodesk.Windows; using System; using System.Collections.Generic; using System.Runtime.InteropServices; using System.Text; using System.Windows; using UIFrameworkServices; namespace DotNet.RevitUI.Helper { /// /// Revit UI helper. /// public static class MainHelper { const int MDI_ID = 0x0000E900; const int StatusBar_ID = 0x0000E801; const int OptionsBar_ID = 0x000EC801; [DllImport("user32")] static extern IntPtr GetDlgItem(IntPtr hWndParent, int cid); /// /// Revit 主窗口句柄. /// public static IntPtr RevitHandle = ComponentManager.ApplicationWindow; /// /// Revit MDI句柄. /// public static IntPtr RevitMDIHandle = GetDlgItem(ComponentManager.ApplicationWindow, MDI_ID); /// /// Revit StatusBar句柄. /// public static IntPtr RevitStatusBarHandle = GetDlgItem(ComponentManager.ApplicationWindow, StatusBar_ID); /// /// Revit OptionsBar句柄 /// public static IntPtr RevitOptionsBarHandle = GetDlgItem(ComponentManager.ApplicationWindow, OptionsBar_ID); /// /// Revit MDI rect. /// public static Rect RevitMDIRect = FloatingService.getMDIClientRect(); } }