C#模擬窗體系統選單

王集鵠發表於2007-03-14
 
using System.Runtime.InteropServices;

const uint TPM_LEFTBUTTON = 0;
const uint TPM_RIGHTBUTTON = 2;
const uint TPM_LEFTALIGN = 0;
const uint TPM_CENTERALIGN = 4;
const uint TPM_RIGHTALIGN = 8;
const uint TPM_TOPALIGN = 0;
const uint TPM_VCENTERALIGN = 0x10;
const uint TPM_BOTTOMALIGN = 0x20;
const uint TPM_RETURNCMD = 0x100;
const uint WM_SYSCOMMAND = 0x0112;

DllImport

private void button1_Click(object sender, EventArgs e)
{
    Point vPoint;
    Rectangle vRect;
    GetCursorPos(
out vPoint);
    SendMessage(Handle, WM_SYSCOMMAND, TrackPopupMenu(
        GetSystemMenu(Handle, 
false),
        TPM_RETURNCMD 
| TPM_LEFTBUTTON, vPoint.X, vPoint.Y, 
        
0, Handle, out vRect), 0);
}


相關文章