Example #1
0
        //-------------------------------------------------------------------

        /// 現在の対象ウィンドウのClient領域をXORで塗りつぶす
        private void XorTargetWindowRect()
        {
            User32.RECT currentTargetRect;
            User32.GetClientRect(this.currentTargetWindow, out currentTargetRect);

            var originalDrawMode = GDI32.SetROP2(this.currentTargetDC, GDI32.R2_XORPEN);
            var originalPen      = GDI32.SelectObject(this.currentTargetDC, App.NullPen.Pen);

            GDI32.Rectangle(this.currentTargetDC,
                            currentTargetRect.Left, currentTargetRect.Top,
                            currentTargetRect.Right, currentTargetRect.Bottom);

            GDI32.SelectObject(this.currentTargetDC, originalPen);
            GDI32.SetROP2(this.currentTargetDC, originalDrawMode);
        }