2016-02-21 96 views
1

QCursor類提供獲取光標上的方法並設置QPixmapQBitmap。我可以從其中一個標準形狀創建一個光標,例如Qt::ArrowCursor。但是,如果我這樣做,我無法獲得光標的像素圖/位圖!Qt:獲取標準光標像素圖

QCursor cursor(Qt::ArrowCursor); 
qDebug() << cursor.pixmap().isNull() 
     << cursor.bitmap() 
     << cursor.mask(); 

將產生輸出

true 0x00 0x00 

我知道文檔說,這是不可能的,但我需要的像素圖/圖標/圖像/動畫/任何一個特定的光標。

那麼,有沒有辦法從Qt獲得標準光標的圖標?我想知道,因爲如果你從QListView中拖拽一個項目,它會同時顯示,標準光標是我拖動的圖像!

+1

根據文檔,這是不可能的 –

+1

標準遊標不一定*有* pixmap。例如,它可能是動畫。 –

回答

1

平原和簡單,你不能。

QPixmap QCursor::pixmap() const

返回遊標像素圖。這隻有在光標是像素映射光標時纔有效。

原因是,對於內置遊標Qt只是要求操作系統通過符號常量使用該特定形狀,而無需訪問實際的像素圖。

+1

我知道那麼多 - 但我可以得到像素圖嗎? – Felix

+0

不使用Qt API。我不知道具體的平臺。 – peppe