UID:104703
图片:问题.jpg
UID:97396
UID:85349
UID:108538
UID:77767
UID:3332
引用第2楼roywillow于2010-09-17 18:25发表的 :我记得有个QApplication::desktop()尝试用这个看看能不能返回桌面的指针?
UID:82574
static BOOL enumUserWindowsCB(HWNDhwnd,LPARAMlParam); //静态全局函数HWND findDesktopIconWnd();
BOOL Widget::enumUserWindowsCB(HWND hwnd,LPARAM lParam){ long wflags = GetWindowLong(hwnd, GWL_STYLE); if(!(wflags & WS_VISIBLE)) return TRUE; HWND sndWnd; if( !(sndWnd=FindWindowEx(hwnd, NULL, L"SHELLDLL_DefView", NULL)) ) return TRUE; HWND targetWnd; if( !(targetWnd=FindWindowEx(sndWnd, NULL, L"SysListView32", L"FolderView")) ) return TRUE; HWND* resultHwnd = (HWND*)lParam; *resultHwnd = targetWnd; return FALSE;}HWND Widget::findDesktopIconWnd(){ HWND resultHwnd = NULL; EnumWindows((WNDENUMPROC)enumUserWindowsCB, (LPARAM)&resultHwnd); return resultHwnd;}
HWND desktopHwnd = findDesktopIconWnd();if(desktopHwnd) SetParent(this->winId(), desktopHwnd);
UID:112035
UID:110946