https://blog.csdn.net/figo_lyf001/article/details/89407059
公司有需求讓我做一個能控制xyz軸的控制面板,同事不知如何做一個好看的不規則按鈕,這裏教大家一個簡便的方法。
先來看看這個button是不是你要的style:
1.用ps製作以上按鈕,並且上三種顏色,分別是常態,hover,和按下去的狀態,由於色差不大,這裏看上去差不多,看看我做的。大小150*150。
2.然後設置css樣式表,讓鼠標移上去有反應,按下也有反應,css樣式不說了,網上都有,這裏放出代碼:
- QPushButton{border-image: url(://image/btn_normal.png);}
- QPushButton:hover{border-image: url(://image/btn_hover.png)}
- QPushButton:pressed{border-image: url(://image/btn_pressed.png)}
3.製作mask,用於遮擋多餘的按鍵,每個按鈕都要做哦,顏色無所謂,但是需要png格式,大小統一150*150。不想顯示的就讓他透明,看看我做的。
3.然後在qt工程中添加按鈕,大小設置爲150*150,就是控制盤的大小。
4.到了最關鍵的一步,就是設置mask。上代碼:
- QPixmap maskUp("://image/mask_up.png");
- ui->btn_up->setMask(maskUp.mask());
5.按照同樣方法新建剩餘的按鈕,並把他們的x,y座標都寫成一個點,這樣他們就重合了,看起來就是一個整體。
快去試試吧。
放出源代碼:https://download.csdn.net/download/figo_lyf001/11129297