具体是这样的,当创建一个Qt窗口,调用window->winId()与window->handle()后,运行截图如下:
此时可以看到,这个窗口的handle为0x1e78de38
windId为394648
这里还没有什么疑惑,现在用Spy++来抓下这个窗口,就会发现有个问题了!
把句柄00060598转10进制后!
结果为394648。
这真是日了狗了,Qt里面的WinID竟然返回的是其中的句柄!
而Windows->handle这个函数咋文档里面说没写完,查不到
但这里面可以猜测到,Qt提供了一套跨平台的句柄(想想就觉得很兴奋)
这里只要知道Qt中WinId在Windows平台上得到的是其句柄,并不是他的WindowsID。