我有一个全屏QT OpenGL应用程序,需要在输入输入文本框时显示虚拟键盘(tabTip.exe)。我面临的问题是,当调用键盘时,虚拟键盘出现在应用程序后面。我尝试了许多不同的东西,并发现我能让它出现在前面的唯一方法是,如果我的窗口不是全屏(例如,在宽度和/或高度上使其比全屏小1个像素)。如果我将平板电脑设置为纵向模式,即使全屏也会显示键盘。
现在我想弄清楚这是驱动程序问题,Qt问题,OpenGL问题还是一般的Windows问题。
有什么建议吗?
更新
我对此进行了进一步研究,我想我看到了发生了什么。 Windows 8,一旦检测到显示器旋转设置为零,并且它具有与桌面分辨率匹配并覆盖整个屏幕的OpenGL窗口,就会启动传统模式,阻止任何Windows 8主题动画运行(包括虚拟键盘) 。 你有什么建议我怎么能阻止窗户做这个?在Windows 8中删除了DwmEnableComposition。