最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python利用PyQt5設(shè)計鼠標(biāo)顯示形狀

 更新時間:2024年07月08日 09:36:14   作者:景天科技苑  
不知道大家有沒有發(fā)現(xiàn),我們在網(wǎng)頁移動鼠標(biāo)時,不同的網(wǎng)頁會有不同的鼠標(biāo)移動特效,通過移動鼠標(biāo),會形成類似蜘蛛網(wǎng)等等的特效,本文將用PyQt5實現(xiàn)這一特效,需要的可以參考一下

PyQt5鼠標(biāo)相關(guān)操作

不知道大家有沒有發(fā)現(xiàn),我們在網(wǎng)頁移動鼠標(biāo)時,不同的網(wǎng)頁會有不同的鼠標(biāo)移動特效。通過移動鼠標(biāo),會形成類似蜘蛛網(wǎng)等等的特效,本文將用PyQt5實現(xiàn)這一特效,需要的可以參考一下

做GUI編程很常見的一個需求,要將按鈕或者其他控件的光標(biāo)移入、移出、按壓時三種情況的控件樣式都不一樣,有些人把這三種情況叫做控件的三態(tài)

另一種情況需要更改光標(biāo)的樣式,如何更改呢,本文就詳細闡述下

通常我們的鼠標(biāo)在不同的狀態(tài)下會顯示不同的形狀,來提示用戶當(dāng)前的狀態(tài),如忙碌,拖拽,禁止,改變窗體大小等:

1.設(shè)置鼠標(biāo)形狀

相關(guān)鼠標(biāo)圖示如下圖所示

在這里插入圖片描述

在這里插入圖片描述

2.鼠標(biāo)形狀設(shè)置代碼實戰(zhàn)

設(shè)置鼠標(biāo)形狀方法setCursor(),根據(jù)傳參不同設(shè)置不同形狀
光標(biāo)的設(shè)置只需要使用setCurror()即可,以下示例了如何設(shè)置光標(biāo)的樣式:

# 0. 導(dǎo)入需要的包和模塊
from PyQt5.Qt import *  # 主要包含了我們常用的一些類, 匯總到了一塊
import sys


# 1. 創(chuàng)建一個應(yīng)用程序?qū)ο?
app = QApplication(sys.argv)


# 2. 控件的操作
# 2.1 創(chuàng)建控件
window = QWidget()


# 2.2 設(shè)置控件
#設(shè)置窗口標(biāo)題,默認標(biāo)題是python,只有頂級控件才可以設(shè)置標(biāo)題欄的標(biāo)題
window.setWindowTitle("鼠標(biāo)相關(guān)操作")
#設(shè)置窗口大小,注意,設(shè)置的空間尺寸大小,不包含上面的標(biāo)題欄
window.resize(500, 500)

#默認鼠標(biāo)形狀是個斜箭頭
window.setCursor(Qt.ArrowCursor)


# 2.3 展示控件
window.show()

# 3. 應(yīng)用程序的執(zhí)行, 進入到消息循環(huán)
sys.exit(app.exec_())

默認鼠標(biāo)形狀是個斜箭頭
window.setCursor(Qt.ArrowCursor)
當(dāng)鼠標(biāo)移動到控件上市,展示我們設(shè)置的鼠標(biāo)樣式

在這里插入圖片描述

其他鼠標(biāo)形狀展示

#小手形狀
window.setCursor(Qt.OpenHandCursor)

在這里插入圖片描述

其他類型的鼠標(biāo)形狀設(shè)置類似,有需求的小伙伴可以多試試

3.自定義鼠標(biāo)形狀

簡單的定義一個光標(biāo)需要以下三步:

  • 1.創(chuàng)建一個圖形對象
  • 2.將圖形對象傳入鼠標(biāo)對象
  • 3.使用setCursor()方法設(shè)置對象

自定義鼠標(biāo)形狀,需要借助QCoursor對象

通過我們自己的圖片來設(shè)置鼠標(biāo)形狀

先看下圖片

在這里插入圖片描述

自定義鼠標(biāo)形狀代碼實戰(zhàn)與解讀

from PyQt5.Qt import *
import sys

app = QApplication(sys.argv)
window = QWidget()
window.resize(500, 500)
window.setWindowTitle("自定義鼠標(biāo)樣式")

# 創(chuàng)建QPixmap對象,并設(shè)置顯示的圖片
pixmap = QPixmap("xxx.png")

# 設(shè)置對象寬和高按比例縮小,返回一個新對象。原對象并沒有被縮放
#pixmap.scaled(targetWidth, targetHeight, Qt.KeepAspectRatio)
#targetWidth 和 targetHeight 是目標(biāo)縮小后的寬度和高度。Qt.KeepAspectRatio 參數(shù)表示保持寬高比。
new_pixmap = pixmap.scaled(50, 50,Qt.KeepAspectRatio)

# 創(chuàng)建QCursor對象(鼠標(biāo)對象),用作setCursor參數(shù)
# 設(shè)置該對象的作用點為圖片的左上角(0,0),默認是圖片中心點
# 默認QCursor(pixmap: QPixmap, hotX: int = -1, hotY: int = -1) 表示作用點在圖片中心點
cursor = QCursor(new_pixmap, 0, 0)

# 設(shè)置window控件的鼠標(biāo)樣式為自定義的QCursor對象:cursor
window.setCursor(cursor)


button = QPushButton(window)
button.setText("按鈕")
button.move(100,100)


window.show()
sys.exit(app.exec_())

運行,可見鼠標(biāo)樣式變成了我們設(shè)置的樣子

并且左上角點擊起作用

在這里插入圖片描述

以上就是python利用PyQt5設(shè)計鼠標(biāo)顯示形狀的詳細內(nèi)容,更多關(guān)于python PyQt5鼠標(biāo)顯示形狀的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論

金门县| 景泰县| 浦江县| 崇左市| 金乡县| 繁昌县| 子洲县| 故城县| 旌德县| 旬阳县| 八宿县| 扎囊县| 黑水县| 台中市| 灵寿县| 霍林郭勒市| 喀什市| SHOW| 望都县| 五寨县| 闵行区| 清徐县| 泊头市| 墨竹工卡县| 崇明县| 惠水县| 随州市| 霍邱县| 扶沟县| 九龙县| 库尔勒市| 泉州市| 闻喜县| 商南县| 桐庐县| 贵南县| 滕州市| 天峨县| 达尔| 盘锦市| 兖州市|