-
大小: 53KB文件類(lèi)型: .rar金幣: 2下載: 0 次發(fā)布日期: 2021-06-08
- 語(yǔ)言: 其他
- 標(biāo)簽: Qt??動(dòng)畫(huà)??
資源簡(jiǎn)介
適合于做一般的Qt編程練習(xí),同時(shí)對(duì)于學(xué)習(xí)Qt也是一個(gè)質(zhì)的飛躍,歡迎共同學(xué)習(xí)分享,如還需要其他的Qt相關(guān)資料可來(lái)我的CSDN博客空間留言索取.---在Qt的道路上我們共同學(xué)習(xí)進(jìn)步

代碼片段和文件信息
#include?“butterfly.h“
#include?
#include?
static?const?double?PI?=?3.14;
Butterfly::Butterfly()
{?
????pix_up.load(“:/images/butterfly1.png“);???//圖片的加載
????pix_down.load(“:/images/butterfly2.png“);
????up?=?true;
????startTimer(100);??//時(shí)間間隔100毫秒
????
}
QRectF
Butterfly::boundingRect()?const???//加載蝴蝶項(xiàng)目的限定范圍,以其自身的坐標(biāo)系為基礎(chǔ)設(shè)定的
{
????qreal?adjust?=?2;
????return?QRectF(-pix_up.width()/2-adjust-pix_up.height()/2-adjust
???? pix_up.width()+adjust*2pix_up.height()+2*adjust);
}
//一下函數(shù)實(shí)現(xiàn)蝴蝶的飛舞效果
void
Butterfly::paint(QPainter?*painter?const?QstyleOptionGraphicsItem?*option?QWidget?*widget)
{
????if(up)
????{
????????painter->drawPixmap(boundingRect().topLeft()pix_up);//繪圖
???? up?=?!up;
????}
????else
????{
???? painter->drawPixmap(boundingRect().topLeft()pix_down);
???? up?=?!up;
????}
}
//判斷蝴蝶的運(yùn)動(dòng)范圍,并做相應(yīng)的處理相信根據(jù)函數(shù)名大家都知道啥意思
void
Butterfly::timerEvent(QTimerEvent?*)
{
????//?edge?controll
????qreal?edgex?=?scene()->sceneRect().right()+boundingRect().width()/2;
????qreal?edgetop?=?scene()->sceneRect().top()+boundingRect().height()/2;
????qreal?edgebottom?=?scene()->sceneRect().bottom()+boundingRect().height()/2;
????
????if?(pos().x()?>=?edgex)
???? setPos(scene()->sceneRect().left()pos().y());
????if?(pos().y()?<=?edgetop)
????????setPos(pos().x()scene()->sceneRect().bottom());
????if?(pos().y()?>=?edgebottom)
????????setPos(pos().x()scene()->sceneRect().top());
????
????angle?+=?(qrand()%10)/20.0;
????qreal?dx?=?fabs(sin(angle*PI)*10.0);
????qreal?dy?=?(qrand()%20)-10.0;
????//flash?=?!flash;
????setPos(mapToParent(dxdy));//映射到場(chǎng)景的坐標(biāo)
????update();
}
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件??????34825??2008-05-09?17:39??butterfly\butterfly
?????文件???????1755??2011-02-27?16:08??butterfly\butterfly.cpp
?????文件??????37888??2008-05-09?17:49??butterfly\butterfly.exe
?????文件????????610??2011-02-27?15:57??butterfly\butterfly.h
?????文件????????359??2008-05-09?17:52??butterfly\butterfly.pro
?????文件???????7981??2011-02-27?16:01??butterfly\butterfly.pro.user
?????文件????????148??2008-03-24?16:09??butterfly\butterfly.qrc
?????文件???????1847??2008-03-24?16:06??butterfly\images\butterfly1.PNG
?????文件???????2098??2008-03-24?16:03??butterfly\images\butterfly2.PNG
????..A..H.?????11776??2008-03-25?08:36??butterfly\images\Thumbs.db
?????文件????????757??2011-02-27?16:08??butterfly\main.cpp
?????文件???????8413??2008-05-09?17:52??butterfly\Makefile
?????文件???????5720??2008-05-09?17:49??butterfly\Makefile.Release
????..A..H.??????9728??2008-03-25?08:36??butterfly\Thumbs.db
?????目錄??????????0??2009-05-04?10:19??butterfly\images
?????目錄??????????0??2011-02-26?18:47??butterfly
-----------?---------??----------?-----??----
???????????????123905????????????????????16
評(píng)論
共有 條評(píng)論