找回密码
 立即注册
收起左侧

qt 俄罗斯方块

4
回复
7341
查看
[复制链接]
累计签到:44 天
连续签到:1 天
来源: 2014-5-15 20:35:21 显示全部楼层 |阅读模式
1Qter豆
我照着qt开发实战写俄罗斯方块,想把不同类型的方块贴不同的图,比如LShape贴1.jpg,TShape贴2.jpg。请问这个怎么实现?
我本来想写个函数,返回字符串,结果失败了。。。
void OneBox::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget){    painter -> drawPixmap(-10 , -10 , 20 , 20 ,QPixmap("E:/qt/sansan/box.gif");    painter -> setBrush(brushColor);    QColor penColor = brushColor;    penColor.setAlpha(220);    painter -> setPen(penColor);    painter -> drawRect(-10 , -10 , 20 ,20);

最佳答案

查看完整内容

你这函数放错地方了,这个要在方块出来之前就要预先随机出一个图形,给这个新的对象贴上。 至于旋转嘛,我觉得四个方向都用不同的图片更容易实现
回复

使用道具 举报

尚未签到

2014-5-15 20:35:22 显示全部楼层
Duskcl 发表于 2014-5-16 11:40
用随机数后,四个方块的贴图都不一样,而且每秒都改变,是不是我写错了?
我这么写的
switch(qrand()%7)

你这函数放错地方了,这个要在方块出来之前就要预先随机出一个图形,给这个新的对象贴上。

至于旋转嘛,我觉得四个方向都用不同的图片更容易实现
回复

使用道具 举报

尚未签到

2014-5-15 23:13:03 显示全部楼层
switch   case          用随机数即可
回复

使用道具 举报

累计签到:44 天
连续签到:1 天
2014-5-16 11:40:20 显示全部楼层
Joey_Chan 发表于 2014-5-15 23:13
switch   case          用随机数即可

用随机数后,四个方块的贴图都不一样,而且每秒都改变,是不是我写错了?
我这么写的
switch(qrand()%7)
    {
        case 1:
            painter -> drawPixmap(-10 , -10 , 20 , 20 ,QPixmap("E:/qt/sansan/box.jpg"));
            break;
        case 2:
             painter -> drawPixmap(-10 , -10 , 20 , 20 ,QPixmap("E:/qt/sansan/box1.jpg"));
            break;
        case 3:
            painter -> drawPixmap(-10 , -10 , 20 , 20 ,QPixmap("E:/qt/sansan/box2.jpg"));
            break;
        case 4:
            painter -> drawPixmap(-10 , -10 , 20 , 20 ,QPixmap("E:/qt/sansan/box3.jpg"));
            break;
        case 5:
           painter -> drawPixmap(-10 , -10 , 20 , 20 ,QPixmap("E:/qt/sansan/box4.jpg"));
            break;
        case 6:
            painter -> drawPixmap(-10 , -10 , 20 , 20 ,QPixmap("E:/qt/sansan/box5.jpg"));
            break;
        case 7:
            painter -> drawPixmap(-10 , -10 , 20 , 20 ,QPixmap("E:/qt/sansan/box6.jpg"));
            break;

        default:break;
    }

想让四个贴图都一样怎么写啊? 能不能举个例子,我小白,不会整 = =!
还有 方块转90度的时候怎么能让贴图不旋转?
回复

使用道具 举报

累计签到:44 天
连续签到:1 天
2014-5-16 15:38:32 显示全部楼层
Joey_Chan 发表于 2014-5-16 15:13
你这函数放错地方了,这个要在方块出来之前就要预先随机出一个图形,给这个新的对象贴上。

至于旋转嘛, ...

噢噢~谢谢~~~~~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了