نحوه کار کردن با QPainter
سلام
من چند تا مثال در مورد QPainter تو اینترنت دیدم ولی سر در نیاوردم
تو برنامه خوذم وقتی از این کلاس استفاده می کنم پیغام می ده که:
نقل قول:
QPainter::begin: Widget painting can only begin as a result of a paintEvent
یعنی برا اینکه رو فرمم یه شکل بکشم حتما باید از کلاس Widget ازث ببرم و از رویداد paintEvent استفاده کنم؟
نقل قول: نحوه کار کردن با QPainter
سلام
برا کشیدن شکل من این کار رو کردم:
نقل قول:
QPixmap p(20,20);
QPixmap pixmap2("pic.bmp");
QPainter painter2(&p);
painter2.drawPixmap(0,0,20,20, pixmap2);
ui->label_2->setPixmap(p);
حالا دو تا سوال داشتم:
1:برا روتیت من از این کد استفاده می کنم اما هیچ اتفاقی نمیی افته
نقل قول:
painter2.rotate(0.5);
البته اعداد بزرگتر هم امنحان کردم
2:
انگار رو یه pixmap یه بار بیشتر نمیشه شکل کشید چون من وقتی بعد از اولین draw می خوام یه شکل دیگه بکشم اتفاقیی نمی افته؟
نقل قول: نحوه کار کردن با QPainter
برای چرخش این مورد را تست کنید:
ابتدا rotate کنید و سپس شکل را با drawPixmap رسم کنید.
ضمنا اگر در Draw این کدها را می نویسید یا با update تصویر را refresh می کنید، شئی کلاس مورد نظر مجددا تعریف می شود پس شکل جدید می تواند جایگزین شود.