我有一个Qt应用程序保持在其他窗口之上。主窗口无框且透明。把它放在其他窗口上方,我遵循以下过程。如何将我的Qt应用程序主窗口始终放在Windows的任务栏上方?
SetForegroundWindow((HWND)winId());
Qt::WindowFlags flags = this->windowFlags();
flags = flags & ~Qt::WindowMinimizeButtonHint;
this->setWindowFlags(flags|Qt::FramelessWindowHint|Qt::WindowStaysOnTopHint);
ui.setupUi(this);
此代码片段将我的Qt主窗口放在所有窗口之上,也放在任务栏之上。 问题在于,无论何时任何区域的任务栏被点击,任务栏上方的主窗口区域将落在任务栏后面。任务栏出现在前面。主窗口仍然保持在所有其他窗口之上。看起来,我的主窗口的底部区域已经落后于任务栏。
我该如何防止任务栏推出自身背后的主窗口区域?我想保持我的窗口高于任何窗口,也高于任务栏。
您确定您已经问过自己这个设计是否能提供良好的用户体验吗?作为一个用户,如果在任何时候都试图掩盖任务栏,我会感到不安... –