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

求助。paintEvent问题

4
回复
7773
查看
[复制链接]
累计签到:1 天
连续签到:1 天
来源: 2013-12-27 18:15:30 显示全部楼层 |阅读模式
1Qter豆
我的代码paintEvent函数初始化中已显示一张图片,现在我想实现点击RadioButton的遭函数把已经显示的这张图片覆盖为另外一张图,可是在QRadioButton的遭函数再用QPainter painter(this)运行会提示QPainter只能在paintEvent函数中,我又不可能在遭函数中再写一个paintEvent函数。怎么弄?toGray函数为QRadioButton的遭函数。




附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

paintEvent我也还没有用过几次。说说我的看法:定义个全局变量,在RadioButton的槽函数里为它赋值,并且调用uodate。在paintEvent里判断这个变量的值,执行需要的代码。供参考。
回复

使用道具 举报

累计签到:213 天
连续签到:1 天
2013-12-27 18:15:31 显示全部楼层
paintEvent我也还没有用过几次。说说我的看法:定义个全局变量,在RadioButton的槽函数里为它赋值,并且调用uodate。在paintEvent里判断这个变量的值,执行需要的代码。供参考。
回复

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-12-28 21:25:38 显示全部楼层
MLTRwhy 发表于 2013-12-28 10:28
paintEvent我也还没有用过几次。说说我的看法:定义个全局变量,在RadioButton的槽函数里为它赋值,并且调 ...

我加了update()函数也没用。。

点评

仔细读了我的回复吗?  详情 回复 发表于 2013-12-29 09:37
回复

使用道具 举报

累计签到:213 天
连续签到:1 天
2013-12-29 09:37:39 显示全部楼层
huang2864901 发表于 2013-12-28 21:25
我加了update()函数也没用。。

仔细读了我的回复吗?
回复

使用道具 举报

累计签到:773 天
连续签到:1 天
2014-1-5 09:45:04 显示全部楼层
可以定义一个全局的pixmap,图片保存在pixmap中,RadioButton的槽函数里调用update
这是我在paintevent函数外自定义画多边形的代码,可以看看有无参考性:
void Widget::drawpology(QPoint p[],int n)
{
    QPainter painter;
    painter.begin(&pixmap);
    for(int i=0;i<n-1;i++)
    {
        painter.drawLine(p[i],p[i+1]);
    }
    painter.drawLine(p[n-1],p[0]); //连接 起点终点
    painter.end();
    painter.begin(this);
    painter.drawPixmap(0,0,pixmap);
    update();
}
回复

使用道具 举报

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

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