qq_42619368
Honma Himawari
采纳率76.9%
2019-06-22 17:28

QT设置矩形的边框颜色和线条粗细

5
已采纳

图片说明
图片说明
用Graphics View做的,但不知道有什么函数可以改变矩形以及其他椭圆等图形的线框颜色和粗细。
只知道调用QcolorDialog可以弹出标准颜色对话框图片说明
但改变图形边框颜色和粗细的变量,函数,方法,有没有标准对话框都不太了解。求个解决办法

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • Happy_Grass 不知道怎么搞了 2年前

    用到画刷和画笔的工具
    '''

    #include <QPainter>
    #include <QPen>
    #include <QBrush>
    
        void Widget::paintEvent(QPaintEvent *ev)
    {
                //    QPainter p(this);
    
                QPainter p;
                p.begin(this);//指定当前出窗口为绘图设备
                /*
                * 绘图操作
                * p.drawxxx();
                */
                //p.drawPixmap(0, 0, width(), height(), QPixmap("../image/322861_300.jpg"));
                //p.drawPixmap(rect(),QPixmap("../image/322861_300.jpg"));
    
                //定义画笔
                QPen pen;
                pen.setWidth(5);
                //pen.setColor(Qt::red);
                pen.setColor(QColor(14,9,234)); //rgb设定颜色
                pen.setStyle(Qt::DashLine); //设置风格
    
                //把画笔给画家
                p.setPen(pen);
    
                //画直线
                p.drawLine(50, 50, 150, 50);
                p.drawLine(50, 50, 50, 150);
    
                QBrush brush;
                brush.setColor(Qt::red);//设置颜色
                brush.setStyle(Qt::Dense1Pattern); //设置样式
    
                //把画刷给画家
                p.setBrush(brush);
    
                //画矩形
                p.drawRect(150, 150, 100, 50);
    
                //画圆形
                p.drawEllipse(QPoint(150, 150), 50, 25);
    
                //画笑脸
                p.drawPixmap(x, 180, 50, 50, QPixmap("../image/322861_300.jpg"));
                p.end();
    
    }
    

    '''

    点赞 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2年前

相关推荐