qt封裝的動畫框架可以很容易實現動畫效果。常用的動畫類是屬性動畫qpropertyanimation。使用qpropertyanimation實現動畫只需要幾個簡單的設定就可以了。
1.建立qpropertyanimation物件。
2.動畫物件繫結要實現動畫的物件(該物件要繼承於qobject)【settargetobject】。
3.動畫物件設定要實現動畫的屬性 ,屬性通過q_property巨集宣告,必須包含屬性的讀寫函式【setpropertyname】。
4.設定屬性的起始值和終止值【setstartvalue和setendvalue】。
5.設定動畫執行時長【setduration】。
6.啟動動畫【start】。
其中1、2、3步也可以通過qpropertyanimation的建構函式來完成。
例項:通過qpropertyanimation慢慢改變qlabel的大小,為了更直**到效果給qlabel設定一張。
1.建立乙個基於qwidget的工程,使用ui設計師拖拽兩個按鈕分別用來啟動/暫停和停止動畫。拖拽乙個qlabel。
2.建立qpropertyanimation物件並設定。
其中setkeyvalueat是用來設定動畫執行期間的屬性值,第乙個引數取0到1之間的值。連線動畫物件的finished訊號可以獲取動畫結束狀態以便做相應的處理。
3.在啟動/暫停按鈕的槽函式中啟動或暫停動畫。
4.在停止按鈕的槽函式中停止動畫。
5.檢視執行效果。
QT之結構 Q PROPERTY概念
qt提供了乙個成熟的屬性系統,但是作為乙個跨平台的且與編譯器無關的庫,qt不依賴於非標準的編譯器功能例如 property or property qt的強大之處在於它可以支援任何標準的c 編譯器。qt是基於 meta object system 元物件 和signals and slots 訊號槽...
QT之Qt之Q PROPERTY巨集理解
qt中的q property巨集在qt中是很常用的,那麼它有什麼作用呢?qt提供了乙個絕妙的屬性系統,q property 是乙個巨集,用來在乙個類中宣告乙個屬性property,由於該巨集是qt特有的,需要用moc進行編譯,故必須繼承於qobject類。q property type name r...
Qt中Q PROPERTY定義屬性以及屬性的使用
q property type name read getfunction 屬性名 write setfunction 讀函式 reset resetfunction notify notifysignal designable bool scriptable bool stored bool us...