SetWindowLong可点击表单元素

时间:2018-03-01 17:46:34

标签: c# setwindowlong

我使用SetWindowLong点击我的表单进行叠加。我想创建Buttons和一些可点击的元素但是Form应该仍然是不可见的,因为它是一个叠加层。

我的OnLoad功能:

this.BackColor = Color.Wheat;
this.TransparencyKey = Color.Wheat;
this.TopMost = true;
//this.DoubleBuffered = true;
this.FormBorderStyle = FormBorderStyle.None;

int initialStyle = GetWindowLong(this.Handle, -20);
SetWindowLong(this.Handle, -20, initialStyle | 0x80000 | 0x20);

GetWindowRect(handle, out rect);
this.Size = new Size(rect.right - rect.left, rect.bottom - rect.top);
this.Top = rect.top;
this.Left = rect.left;

其他一些部分:

public struct RECT
{
    public int left, top, right, bottom;
}

RECT rect;
public const string WINDOW_NAME = "WINDOWNAME_WHATEVER";
IntPtr handle = FindWindow(null, WINDOW_NAME);

我的按钮究竟发生了什么,我怎样才能使用它?

0 个答案:

没有答案