C++|Qt工作笔记-Windows平台下的句柄与Qt中QWindow::winId()以及 QPlatformWindow::handle的区别与联系

具体是这样的,当创建一个Qt窗口,调用window->winId()与window->handle()后,运行截图如下:

此时可以看到,这个窗口的handle为0x1e78de38

windId为394648

 

这里还没有什么疑惑,现在用Spy++来抓下这个窗口,就会发现有个问题了!

把句柄00060598转10进制后!

结果为394648。

这真是日了狗了,Qt里面的WinID竟然返回的是其中的句柄!

而Windows->handle这个函数咋文档里面说没写完,查不到

但这里面可以猜测到,Qt提供了一套跨平台的句柄(想想就觉得很兴奋)

 

这里只要知道Qt中WinId在Windows平台上得到的是其句柄,并不是他的WindowsID。

 

 

©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页