QTreeview上面划线[通俗易懂]

QTreeview上面划线[通俗易懂]因为要做一个动画编辑器功能,需要有时间标线,我使用了QTreeview作为显示控件,但是上面划线就是个大问题,经过几番尝试终于找到办法了。先上图具体办法就是继承了qtreeview并且重载paintevent这个函数voidActionTreeView::paintEvent(QPaintEvent*event){Q_UNUSED(event);QTreeView::pa

大家好,又见面了,我是你们的朋友全栈君。

因为要做一个动画编辑器功能,需要有时间标线,我使用了QTreeview作为显示控件,但是上面划线就是个大问题,经过几番尝试终于找到办法了。先上图这里写图片描述

具体办法就是继承了qtreeview 并且重载paintevent这个函数

void ActionTreeView::paintEvent(QPaintEvent *event) { Q_UNUSED(event);
    QTreeView::paintEvent(event);
    QPainter painter(viewport());
    painter.setPen(QPen(QColor(255,0,0)));
    painter.drawLine(QPointF(100,100),QPointF(400,400));
}

这里要注意两点,第一就是要先调用QTreeview的原生paintEvent,第二点就是构造painter时候不要用this指针,要用viewport(),我也是看了源代码抄来的,嘿嘿,第一次写博客,有点乱,大家见谅!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138890.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 干货丨初学者学Java应该安装什么软件?

    干货丨初学者学Java应该安装什么软件?初学者刚刚入门学习需要用到一些开发工具,初学Java一般从控制台应用程序开发开始的,在cmd下调试,为你的电脑搭建好开发环境,需要在网站上下载JDK,安装完成后调试成功就可以开始写你的J…

    2022年7月8日
    24
  • 制作opc服务器,力控服务器怎样做为OPC服务器,供其他OPC客户端程序访问

    制作opc服务器,力控服务器怎样做为OPC服务器,供其他OPC客户端程序访问publicvoidListAll(Guidcatid,outOpcServers[]serverslist){serverslist=null;Dispose();Guidguid=newGuid(13486D51-4821-11D2-A494-3CB306C10000);Typetypeoflist=Type.GetTypeFromCLSID(guid);OPCL…

    2022年6月20日
    31
  • py爬取图片_Python爬取图片

    py爬取图片_Python爬取图片疲惫的生活里总要有些温柔梦想吧目标URL:http://www.win4000.com/meinvtag4_1.html爬取美桌网某个标签下的美女壁纸,点进详情页可以发现,里面是一组套图一…

    2022年9月14日
    2
  • 鳄鱼mt4复盘助手_免费MT4复盘助手2015年8月新版

    鳄鱼mt4复盘助手_免费MT4复盘助手2015年8月新版本帖最后由宁静的魔于2015-8-2713:56编辑简介:鳄鱼复盘助手由鳄鱼金融独立研发,可对历史数据进行复盘测试,研究自己的交易系统。乃操盘交易必备神器。鳄鱼复盘助手完全免费,本论坛会员即可参与使用。本程序需要.netframework运行库,部分计算机没有装的下载安装一下,这个可以解决双击无反应.netframework4.0下载参与公测活动可得论坛纪念勋章,详情请点击:鳄…

    2022年5月18日
    43
  • oracle修改用户名密码语句_oracle修改数据库用户名

    oracle修改用户名密码语句_oracle修改数据库用户名oracle修改用户名,密码首先我们打开命令行,cmd,进入oracle的后台管理界面,当然,还有很多其他的方式可以进入oracle后台管理界面,比如使用PL/SQL界面化工具,或者使用oracle自带的SQL工具。打开命令窗口,登录oracle后台管理界面:具体命令为在运行处输入cmd,在弹出的命令提示窗口输入setoracle_sid=数据库名称,输入sqlplus进入ora…

    2022年7月28日
    7
  • python数字转字符串固定位数_python-将String转换为64位整数映射字符以自定…「建议收藏」

    python数字转字符串固定位数_python-将String转换为64位整数映射字符以自定…「建议收藏」您将4个不同“数字”的字符串解释为数字,因此以4为基数.如果您有一串实际数字,范围为0-3,则可以让int()真正快速地生成一个整数.defseq_to_int(seq,_m=str.maketrans(‘ACGT’,’0123′)):returnint(seq.translate(_m),4)上面的函数使用str.translate()用匹配的数字替换4个字符中的每个字符(我使用静态s…

    2022年9月25日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号