201114阶段二qt自定义图元类
生活随笔
收集整理的這篇文章主要介紹了
201114阶段二qt自定义图元类
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
目錄
- 一、學(xué)習(xí)的知識點(diǎn)
- 一)自定義視圖、場景、圖元類
- 一)1 創(chuàng)建類
- 一)2 圖元類的實(shí)現(xiàn)
- 一)3 advance槽函數(shù)
- 一)3 collidingItems()碰撞檢測函數(shù)
- 二、上課沒有聽懂或者沒有理解的地方
- 三、當(dāng)天學(xué)習(xí)的收獲
一、學(xué)習(xí)的知識點(diǎn)
一)自定義視圖、場景、圖元類
一)1 創(chuàng)建類
自定義視圖、場景、圖元類時,先選擇繼承QObject基類,讓系統(tǒng)自動生成QObject(自己寫的會出現(xiàn)奇怪的錯誤),然后在生成的頭文件把繼承的QObject改成需要的,如QGraphicsView等等。
一)2 圖元類的實(shí)現(xiàn)
自定義的圖元類需要實(shí)現(xiàn)兩個虛函數(shù),分別是 :
painter->drawPixmap(0-image.width()/2,0-image.height()/2,image.width(),image.height(),image);
一)3 advance槽函數(shù)
advance槽函數(shù)在場景類和圖元類都有,在利用場景類的對象調(diào)用advance函數(shù)時,會執(zhí)行兩次該場景中所有的圖元項(xiàng)的advance函數(shù),第一次調(diào)用時phase為0,告訴所有圖元項(xiàng)即將移動,第二次phase為1,執(zhí)行移動。
一)3 collidingItems()碰撞檢測函數(shù)
圖元的碰撞檢測函數(shù)返回一個鏈表,當(dāng)碰撞到時,鏈表中存入一個值,此時鏈表結(jié)點(diǎn)個數(shù)不等于0.
二、上課沒有聽懂或者沒有理解的地方
無
三、當(dāng)天學(xué)習(xí)的收獲
創(chuàng)建自定義的類時,要選擇繼承QObject基類,避免出現(xiàn)奇怪的問題。
總結(jié)
以上是生活随笔為你收集整理的201114阶段二qt自定义图元类的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 201112阶段二qt图形视图框架
- 下一篇: 201119阶段二sqlite3