qwindowkit
qwindowkit copied to clipboard
使用`setSystemButton()`设置了标题栏按钮后,这些被设置的按钮的鼠标样式会无效
QPushButton *closeButton = new QPushButton;
closeButton->setCursor(Qt::PointingHandCursor); /* 将光标设为小手指 */
/* 设置标题栏的关闭按钮,光标样式永远都是箭头,不会变为小手指 */
windowAgent->setSystemButton(QWK::WindowAgentBase::Close, closeButton);
测试环境 Win10 Qt-5.15.2 QWindowKit-1.4.0
没必要别调用setSystemButton,这个函数主要是为了适配snap layout,你没这个需求的话就不要调用。而且对于snap layout而言应该是只需要对最大化按钮调用就足够了。你设置cursor失败应该是setSystemMenu后很多事件被系统接管了导致的
应该有workaround方法,比如不调用setSystemButton,或者手动用SetCursor强行改光标形状。这个跟QWK没什么关系,先关了。如果你觉得还需要继续讨论,就自行重新打开。