读书人

这个有关问题一直困扰小弟我让小弟我

发布时间: 2013-09-29 11:07:08 作者: rapoo

这个问题一直困扰我,让我都阳w了
我用backgroundworker开启了另外一个线程,但是我想调用API函数GetWindowRect,这个函数是基于GUI线程的?
也想过用invoke啦,但是Invoke带参数的形式,是一个object数组,
GetWindowRect的参数有ref关键字,怎么放在ojject数组里?如何解决?



[DllImport("user32.dll")]
private static extern int GetWindowRect(int hwnd, ref Rect lpRect);

private void bgw_DoWork(object sender, DoWorkEventArgs e)
{

while (bgw.WorkerSupportsCancellation)
{
GetWindowRect(hWnd,ref lpRect);
}


}

我该怎么调用才能保证功能呢正常?
[解决办法]
System.Drawing.Rectangle lpRect = new Rectangle();
GetWindowRect(hWnd,ref lpRect);

读书人网 >C#

热点推荐