4 Stimmen

Ändern der Deckkraft eines beliebigen Fensters von C# aus

Ist es möglich, die Deckkraft aller geöffneten Fenster von C# aus zu ändern. Ich googelte für die Minimierung der Windows und ich kam zu wissen, dass seine möglich mit pInvoke Aufrufe. Es hat sogar funktioniert. Ähnlich ist es möglich, die Deckkraft aller geöffneten Windows von C# zu ändern?

Außerdem habe ich kein Interesse an MFC-Sachen. Dennoch gibt es irgendwelche Werkzeuge, um die Liste der Apis in einer Dll ausgesetzt wissen?

11voto

Aamir Punkte 14354

Sie können verwenden SetLayeredWindowAttributes API dies zu tun.

Prüfen Sie dies für die pInvoke-Version dieser API.

Beispielcode aus dem oben genannten Link:

[DllImport("user32.dll")]
static extern bool SetLayeredWindowAttributes(IntPtr hwnd, uint crKey,byte bAlpha, uint dwFlags);

public const int GWL_EXSTYLE = -20;
public const int WS_EX_LAYERED = 0x80000;
public const int LWA_ALPHA = 0x2;
public const int LWA_COLORKEY = 0x1;

//set the window style to alpha appearance
private void button4_Click(object sender, EventArgs e)
{
    SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) ^ WS_EX_LAYERED);
    SetLayeredWindowAttributes(Handle, 0, 128, LWA_ALPHA);
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X