this.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint, true);
this.UpdateStyles();
上面代码里面this是form,我想要把这个this变成桌面。
根据我已经学到的,我知道了桌面的句柄是:
IntPtr DesktopHandle = GetDC(IntPtr.Zero);
所以我想要根据句柄获取控件,来获取桌面。
当然以上是我的思路之一,有可能存在严重的错误,我只是问一下。
谢谢!
如果想要更多了解我的问题:http://blog.csdn.net/qq_30997287/article/details/48164379
7 个解决方案
#1
IntPtr DesktopHandle = GetDC(IntPtr.Zero);
这肯定是错的,桌面句柄怎么可能是0呢。
这肯定是错的,桌面句柄怎么可能是0呢。
#2
测试过,是对的。
#3
请参考代码:
[DllImport("User32.dll")]
public extern static IntPtr GetDC(System.IntPtr hWnd);
private void button12_Click(object sender, EventArgs e)
{
IntPtr DesktopHandle = GetDC(IntPtr.Zero);
Graphics g = System.Drawing.Graphics.FromHdc(DesktopHandle);
g.FillRectangle(new SolidBrush(Color.Red), 0, 0, 100, 100);
}
#4
你得到桌面句柄,就可以操作桌面了,你还想要得到什么呢,windows的api大部分是通过句柄操作的
#5
给一个我的实例,根据句柄获取axmpcontrol控件
IntPtr pIntPtr = new IntPtr(m_hookHelper.ActiveView.ScreenDisplay.hWnd);
AxMapControl m_MapControl = System.Windows.Forms.Form.FromHandle(pIntPtr) as AxMapControl;
IntPtr pIntPtr = new IntPtr(m_hookHelper.ActiveView.ScreenDisplay.hWnd);
AxMapControl m_MapControl = System.Windows.Forms.Form.FromHandle(pIntPtr) as AxMapControl;
#6
我觉得你回答问题是文不对题…………-_-||
#7
赞!!赞\(≧▽≦)/
#1
IntPtr DesktopHandle = GetDC(IntPtr.Zero);
这肯定是错的,桌面句柄怎么可能是0呢。
这肯定是错的,桌面句柄怎么可能是0呢。
#2
测试过,是对的。
#3
请参考代码:
[DllImport("User32.dll")]
public extern static IntPtr GetDC(System.IntPtr hWnd);
private void button12_Click(object sender, EventArgs e)
{
IntPtr DesktopHandle = GetDC(IntPtr.Zero);
Graphics g = System.Drawing.Graphics.FromHdc(DesktopHandle);
g.FillRectangle(new SolidBrush(Color.Red), 0, 0, 100, 100);
}
#4
你得到桌面句柄,就可以操作桌面了,你还想要得到什么呢,windows的api大部分是通过句柄操作的
#5
给一个我的实例,根据句柄获取axmpcontrol控件
IntPtr pIntPtr = new IntPtr(m_hookHelper.ActiveView.ScreenDisplay.hWnd);
AxMapControl m_MapControl = System.Windows.Forms.Form.FromHandle(pIntPtr) as AxMapControl;
IntPtr pIntPtr = new IntPtr(m_hookHelper.ActiveView.ScreenDisplay.hWnd);
AxMapControl m_MapControl = System.Windows.Forms.Form.FromHandle(pIntPtr) as AxMapControl;
#6
我觉得你回答问题是文不对题…………-_-||
#7
赞!!赞\(≧▽≦)/