public override void Init()
        {
            SbsdkEvents.OnXYMove += new SBSDKComWrapperLib._ISBSDKBaseClass2Events_OnXYMoveEventHandler(this.OnXYMove);
            SbsdkEvents.OnXYDown += new SBSDKComWrapperLib._ISBSDKBaseClass2Events_OnXYDownEventHandler(this.OnXYDown);
            SbsdkEvents.OnXYUp += new SBSDKComWrapperLib._ISBSDKBaseClass2Events_OnXYUpEventHandler(this.OnXYUp);

            var handle = new WindowInteropHelper(mainWindow).Handle;
            var int_handle = handle.ToInt32();
            Sbsdk.SBSDKAttachWithMsgWnd(int_handle, false, int_handle);
            Sbsdk.SBSDKSetSendMouseEvents(handle.ToInt32(), _SBCSDK_MOUSE_EVENT_FLAG.SBCME_NEVER, -1);
            HwndSource.FromHwnd(handle).AddHook(new_message);

            _backgrounndThreadStart = new ThreadStart(RaiseEvents);
            _backgroundThread = new Thread(_backgrounndThreadStart);
            //_backgroundThread.Start();
        }
示例#2
0
        public static void ShowWindowTopMost(System.Windows.Window Window)
        {
            IntPtr WindowHandle = new WindowInteropHelper(Window).Handle;

            SetWindowPos(WindowHandle.ToInt32(),
                         HWND_TOPMOST,
                         Convert.ToInt32(Window.Left),
                         Convert.ToInt32(Window.Top),
                         Convert.ToInt32(Window.Width),
                         Convert.ToInt32(Window.Height),
                         SWP_SHOWWINDOW);

            SetWindowPos(WindowHandle.ToInt32(),
                         HWND_NONTOPMOST,
                         Convert.ToInt32(Window.Left),
                         Convert.ToInt32(Window.Top),
                         Convert.ToInt32(Window.Width),
                         Convert.ToInt32(Window.Height),
                         SWP_SHOWWINDOW);
        }