Beispiel #1
0
        /// <summary>
        /// 从计算机屏幕上创建对象
        /// </summary>
        /// <returns>创建的对象</returns>
        public static ReversibleDrawer FromScreen()
        {
            ReversibleDrawer rd = new ReversibleDrawer();

            rd.InitFromHWnd(new IntPtr(0));
            return(rd);
        }
Beispiel #2
0
        /// <summary>
        /// 从一个窗体句柄创建一个对象
        /// </summary>
        /// <param name="hwnd">窗体句柄</param>
        /// <returns>创建的对象</returns>
        public static ReversibleDrawer FromHwnd(IntPtr hwnd)
        {
            ReversibleDrawer rd = new ReversibleDrawer();

            rd.InitFromHWnd(hwnd);
            return(rd);
        }
Beispiel #3
0
        /// <summary>
        /// 从一个设备上下文句柄创建对象
        /// </summary>
        /// <param name="hdc">设备上下文句柄</param>
        /// <returns>创建的对象</returns>
        public static ReversibleDrawer FromHDC(IntPtr hdc)
        {
            ReversibleDrawer rd = new ReversibleDrawer();

            rd.InitFromHDC(hdc);
            return(rd);
        }
Beispiel #4
0
        protected override void OnDraw()
        {
            base.OnDraw();
            if (bolCustomAction)
            {
                return;
            }
            ReversibleDrawer drawer = null;

            if (myBindControl != null)
            {
                drawer = ReversibleDrawer.FromHwnd(myBindControl.Handle);
            }
            else
            {
                drawer = ReversibleDrawer.FromScreen();
            }
            drawer.DrawRectangle(myDescRectangle);
            drawer.Dispose();
        }