• 6332阅读
  • 3回复

关于win32  API在qt下的调用 [复制链接]

上一主题 下一主题
离线summerpeking
 
只看楼主 倒序阅读 楼主  发表于: 2012-01-04
大家好,我想问一下关于win32  API在qt下调用的问题。我想写一个小的截取某个窗口图像的小程序,于是,我需要获得那个窗口的ID,然后用qt的grabWindow函数来抓取窗口的图像。可是win32  API函数GetWindowThreadProcessId返回的DWORD类型,grabWindow中窗口的ID是WId类型,那个类型只能获得整个桌面的ID和qt窗口的,其余窗口的好像是不能获得。DWORD类型和WId(Qt::HANLDE)类型不兼容,强制转换后不能获得正确的结果。请问有没有什么替代的方法可以实现此功能?代码如下:
    LPCTSTR gameCaption=(LPCTSTR)"MSDN Library - October 2001";    HWND gameh;    gameh=FindWindow(NULL,gameCaption);    DWORD processid;    GetWindowThreadProcessId(gameh,&processid);    QPixmap pixmap;    QPixmap pix;    pix=pixmap.grabWindow((HWND__*)processid,0,0,-1,-1);
离线jdwx

只看该作者 1楼 发表于: 2012-01-04
QObject::findChild
看看有没有用


我刚试了:没用!
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线summerpeking
只看该作者 2楼 发表于: 2012-01-07
回 1楼(jdwx) 的帖子
我已经解决了这个问题,具体请看我的日志!
离线tofigure
只看该作者 3楼 发表于: 2012-01-31
快速回复
限100 字节
 
上一个 下一个