在我的 Qt 应用程序中,我正在关闭应用程序时保存一些数据。保存数据在 closeEvent(QCloseEvent*) 方法中执行。我想在保存数据之前更改光标并在保存后将其恢复。
根据我在 Internet 上阅读的内容,setCursor( const QCursor& ) 不能在全局范围内工作,而只能在某些指定小部件的范围内工作。因此我尝试使用 WinAPI 中的 SetCursor( HCURSOR )。
代码如下所示:
void mainWin::closeEvent( QCloseEvent* e ) {
SetCursor( LoadCursor( GetModuleHandle( NULL ), ( LPCWSTR )IDC_WAIT ) );
saveData();
SetCursor( LoadCursor( GetModuleHandle( NULL ), ( LPCWSTR )IDC_ARROW ) );
e->accept();
}
但是,第一个 SetCursor() 方法只是在数据保存时隐藏光标,而不是将其更改为某种沙漏。为什么?