透明的窗口应用程序覆盖在Windows中

我想写一个应用程序来处理某些用户操作。

应用程序将永远是透明的,应该点击进入。 所以,后面的窗口将被看到,并且作为透明的应用程序点击,我应该能够点击后面的窗口。 只有某些用户操作(如双击)我想在我的透明应用程序中处理。

有没有可能做到这一点? 任何指导方针感激。

你可以从你的应用程序点击假窗口:

[DllImport("user32.dll",CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)] public static extern void mouse_event(uint dwFlags, uint dx, uint dy, uint cButtons, uint dwExtraInfo); private const int MOUSEEVENTF_LEFTDOWN = 0x02; private const int MOUSEEVENTF_LEFTUP = 0x04; private const int MOUSEEVENTF_RIGHTDOWN = 0x08; private const int MOUSEEVENTF_RIGHTUP = 0x10; private void Form_MouseClick(object sender, MouseEventArgs e) { this.Hide(); Point p = this.PointToScreen(e.Location); mouse_event(MOUSEEVENTF_LEFTDOWN , pX, pY, 0, 0); mouse_event(MOUSEEVENTF_LEFTUP, pX, pY, 0, 0); this.Show();//since this.opacity = 0; form will never be really visible } 

现在双击你可以设置你想要什么。

您可以创建一个透明的窗口并点击。 但是,这是全部或没有。 除了双击之外,您无法点击。

所以,要做你想做的事情,我相信你将需要使用全局鼠标钩来处理双击。 但是这将需要本地代码。

实际上,想一想,为什么你需要透明的点击窗口呢?