当前位置: 首页 > wzjs >正文

电子商务网站建设与管理 李建忠安卓优化大师破解版

电子商务网站建设与管理 李建忠,安卓优化大师破解版,南京微网站建设,汽车报价大全QCustomPlot 用户交互 一、概述二、操作范围三、选择机制1. 控制Graph的可选择性和选择状态2. 所选对象的外观3. 多部分对象4. 对选择变化做出反应 四、用户交互信号 一、概述 QCustomPlot提供了多个内置的用户交互。它们大致可以分为 通过用鼠标拖动和滚动鼠标滚轮进行范围操…

QCustomPlot 用户交互

  • 一、概述
  • 二、操作范围
  • 三、选择机制
    • 1. 控制Graph的可选择性和选择状态
    • 2. 所选对象的外观
    • 3. 多部分对象
    • 4. 对选择变化做出反应
  • 四、用户交互信号

一、概述

QCustomPlot提供了多个内置的用户交互。它们大致可以分为

  • 通过用鼠标拖动和滚动鼠标滚轮进行范围操作
  • 通过点击选择绘图实体
  • 用户点击绘图实体时发出的信号

二、操作范围

这个其实就是开启鼠标上下左右平移或者缩放Graph的功能

用户操作轴范围的默认方法是在相应的QCPAxisRect上执行拖动操作。
在这里插入图片描述

要在QCustomPlot控件中启用范围拖动,需要将标志 QCP::iRangeDrag 添加到当前允许的交互中。这可以通过 customPlot->setInteraction(QCP::iRangeDrag, true) 来完成。要只允许在一个方向上拖动,请使用 QCPAxisRect::setRangeDrag 并指定Qt::Vertical或Qt::Horizontal。默认列表允许两个方向Qt::Vertical | Qt::Horizontal。

在拖动操作期间,通过QCPAxisRect::setRangeDragAxes配置的轴会实时更新其范围,自动导致重绘。这给用户的印象是通过用鼠标抓取来移动绘图坐标平面。最初,将范围拖动轴配置为矩形的底部和左侧轴。对于QCustomPlot控件的默认轴矩形,它们是QCustomPlot::xAxis和QCustomPlot::yAxis。

要改变范围的大小,即放大或缩小绘图,用户可以使用鼠标滚轮。此行为由交互标志QCP::iRangeZoom 控制,该标志也需要通过 QCustomPlot::setInteraction 激活。就像范围拖动一样,缩放也可以根据受影响的轴和方向进行选择,参见函数QCPAxisRect::setRangeZoomAxes和QCPAxisRect::setRangeZoom

。此外,缩放强度可以通过QCPAxisRect::setRangeZoomFactor来控制。在普通鼠标硬件上,一个鼠标滚轮步对应于应用于轴范围的这个因子。如果因子大于1,则向前滚动鼠标滚轮会减小范围(放大),向后滚动则会增大范围(缩小)。若要扭转此行为,请将鼠标滚轮缩放因子设置为小于1(但大于零)。缩放总是以绘图中当前鼠标光标的位置为中心。

这意味着将光标指向感兴趣的功能并滚动鼠标滚轮可以放大该功能。

三、选择机制

在这里插入图片描述

QCustomPlot提供了一种选择机制,允许用户选择图中的每个组件,如轴和图形。可以使用以 QCP::iSelect(…) 开头的交互标志来控制某类实体在图中是否通常可选择。例如,设置customPlot->setInteraction(QCP::iSelectPlottables, true)将允许用户通过点击它们来选择绘图(例如图形)。请查看所有交互标志的QCP::Interaction文档。

要允许同时选择多个对象,可以设置 QCP::iMultiSelect交互 标志。然后,用户可以通过按住多选择修饰符(参见QCustomPlot::setMultiSelectModifier)连续选择多个对象,默认情况下是Ctrl。

1. 控制Graph的可选择性和选择状态

可以使用单个对象上的setSelectable函数进一步微调可选择性。例如,如果绘图中的特定图形不能被用户选择,调用thatGraph->setSelectable(false)。可以通过setSelected函数以编程方式修改所选状态。即使禁用了用户的可选择性,也可以通过编程方式更改选择状态。

要取消选中图中的所有对象,请调用QCustomPlot::deselectAll。

2. 所选对象的外观

被选中的对象通常用不同的笔、笔刷或字体显示。其实就是让选择的对象更加突出的显示出来。这可以通过QCPGraph::setSelectedPen, QCPGraph::setSelectedBrush, QCPAxis::setSelectedLabelFont, QCPAxis::setSelectedBasePen, QCPItemText::setSelectedColor等方法进行配置,仅举几例。可以看到,它们的命名与原始(非选中)属性相似,但带有“Selected”前缀。

3. 多部分对象

一些对象(如轴线和图例)具有更复杂的外观,因此用于选择的单个布尔值是不够的。在这些情况下,可选择性和选择状态都是SelectablePart标志的一个或组合(各自的QFlags类型称为SelectableParts)。每个多部件对象定义自己的SelectablePart类型。
在这里插入图片描述

例如,QCPAxis在概念上由三部分组成:带有打勾标记的轴骨干打勾标签(数字)轴标签。由于这三个部分应该是可单独选择的,所以qcpaaxis::SelectablePart定义了qcpaaxis::spNone、qcpaaxis::spAxis、qcpaaxis::spTickLabels和qcpaaxis::spAxisLabel。要使轴骨干和刻度标签可选,但不能使轴标签可选,请调用theAxis->setSelectableParts(qcpaaxis::spAxis|QCP::spTickLabels)。

要控制多部件对象的当前选择状态,请使用qcpaaxis::setSelectedParts方法。

4. 对选择变化做出反应

当选择发生变化时,每个对象都会发出一个名为selectionChanged的信号。无论更改是由用户引起的,还是由调用setSelected/setSelectedParts以编程方式引起的,都无关紧要。

如果绘图中的选择被用户交互改变,则会发出QCustomPlot范围的信号QCustomPlot::selectionChangedByUser。

在连接到该信号的槽函数中,我们可以检查某些对象的选择状态并做出相应的反应。在这里,QCustomPlot::selectedPlottables、selectedItems、selectedax和selectedLegends方法对于检索特定类型的选定对象可能很有用。

四、用户交互信号

QCustomPlot独立于选择机制,在用户交互时发出各种信号。最低级的是QCustomPlot::mouseDoubleClick、mousePress、mouseMove、mouserrelease和mouseWheel信号。当QCustomPlot控件的相应事件触发时,会发出它们。注意,最干净的方法是创建QCustomPlot的子类,并用相同的名称重新实现事件方法(从QWidget 继承)。但是,如果我们不想子类化QCustomPlot,这些信号允许更容易地访问简单任务的用户交互。

还有更高级的信号,用于报告图中某些对象的单击和双击:QCustomPlot::plottableClick、plottableDoubleClick、itemClick、itemDoubleClick、axisClick、axisDoubleClick、legendClick、legendDoubleClick、titleClick和titleDoubleClick。所有这些信号都会报告哪个对象被单击了(如果是多部分对象,还会报告哪个部分),以及相关的QMouseEvent。

http://www.dtcms.com/wzjs/103750.html

相关文章:

  • wordpress制作404提升seo排名的方法
  • 尼乐清网站建设长春网站建设方案推广
  • 济南专门做公司网站的公司最近时事热点新闻评论及点评
  • 大前端最新网站互联网销售公司
  • 广州做网站海珠信科十大中文网站排名
  • 做微商能利用的网站有哪些网络营销推广的方式
  • 网站性能容量的收集与分析怎么做集合竞价口诀背熟6句
  • 顺德微网站建设seo关键词是怎么优化的
  • 用什么程序做网站有道搜索引擎入口
  • 做卡盟网站百度系app有哪些
  • 动态网站开发软件周口搜索引擎优化
  • 微信营销和网站建设百度贴吧网页版登录入口
  • 网站别人做的上面有方正字体拼多多关键词排名在哪里看
  • 网站建设如何账务处理什么是seo和sem
  • 杭州互联网企业有哪些一键优化大师
  • 做网站要学什么软件简单网页制作
  • 网站开发排名郑州seo外包v1
  • 个人网站是什么意思星巴克seo网络推广
  • 搜索引擎网站开发今日头条新闻10条
  • 模板网站建设制作教育培训加盟
  • 广东建筑人才网招聘信息网泰州网站优化公司
  • 自己可以接单做网站吗青岛百度竞价
  • 西丽做网站建立网站的基本步骤
  • wordpress博客推荐关键词排名优化公司外包
  • 公司网上推广平台百度seo如何优化
  • 常德网站开发服务石家庄新闻网头条新闻
  • 济南网站假设推广谷歌推广怎么样
  • 郑州网站优化关键词app开发多少钱
  • 游戏代理去什么平台找搜索引擎优化实验报告
  • 云南 网站建设网站百度文库官网