首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用JFreeChart上下拖动点后获取值

JFreeChart是一个开源的Java图表库,可以用于创建各种类型的图表,包括折线图、柱状图、饼图等。它提供了丰富的功能和灵活的配置选项,使开发人员能够轻松地创建交互式和可定制的图表。

在JFreeChart中,要实现使用上下拖动点后获取值的功能,可以通过以下步骤来实现:

  1. 创建一个图表对象:使用JFreeChart的ChartFactory类的静态方法创建一个图表对象,指定图表类型和数据集。
  2. 创建一个绘图区域对象:使用JFreeChart的createXYPlot()方法创建一个绘图区域对象,该对象用于绘制折线图。
  3. 创建一个数据集对象:使用JFreeChart的XYSeriesCollection类创建一个数据集对象,用于存储折线图的数据。
  4. 添加数据到数据集对象:使用XYSeriesCollection的addSeries()方法将数据添加到数据集对象中。
  5. 创建一个图表面板对象:使用ChartPanel类创建一个图表面板对象,该对象用于显示图表。
  6. 添加鼠标事件监听器:使用ChartPanel的addChartMouseListener()方法添加一个鼠标事件监听器,用于监听鼠标拖动事件。
  7. 实现鼠标事件监听器的方法:在鼠标事件监听器的方法中,可以通过ChartMouseEvent对象获取鼠标事件的类型和坐标信息。
  8. 获取拖动点的值:根据鼠标事件的坐标信息,可以通过JFreeChart的XYPlot对象的getDomainAxis()和getRangeAxis()方法获取X轴和Y轴对象,然后使用轴对象的java2DToValue()方法将坐标转换为实际的数值。

以下是一个示例代码,演示了如何使用JFreeChart实现上下拖动点后获取值的功能:

代码语言:java
复制
import org.jfree.chart.*;
import org.jfree.chart.entity.*;
import org.jfree.chart.plot.*;
import org.jfree.data.xy.*;
import org.jfree.ui.*;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class DragPointExample extends JFrame {

    private XYSeries series;
    private XYSeriesCollection dataset;
    private JFreeChart chart;
    private ChartPanel chartPanel;

    public DragPointExample() {
        super("Drag Point Example");

        // 创建数据集对象
        series = new XYSeries("Data");
        dataset = new XYSeriesCollection(series);

        // 创建图表对象
        chart = ChartFactory.createXYLineChart(
                "Drag Point Example", // 标题
                "X", // X轴标签
                "Y", // Y轴标签
                dataset, // 数据集
                PlotOrientation.VERTICAL, // 图表方向
                true, // 是否显示图例
                true, // 是否生成工具提示
                false // 是否生成URL链接
        );

        // 创建绘图区域对象
        XYPlot plot = chart.getXYPlot();

        // 创建图表面板对象
        chartPanel = new ChartPanel(chart);
        chartPanel.setPreferredSize(new Dimension(500, 300));

        // 添加鼠标事件监听器
        chartPanel.addChartMouseListener(new ChartMouseListener() {
            @Override
            public void chartMouseClicked(ChartMouseEvent event) {
                // 处理鼠标点击事件
            }

            @Override
            public void chartMouseMoved(ChartMouseEvent event) {
                // 处理鼠标移动事件
                ChartEntity entity = event.getEntity();
                if (entity instanceof XYItemEntity) {
                    XYItemEntity itemEntity = (XYItemEntity) entity;
                    XYDataset dataset = itemEntity.getDataset();
                    int seriesIndex = itemEntity.getSeriesIndex();
                    int itemIndex = itemEntity.getItem();
                    double x = dataset.getXValue(seriesIndex, itemIndex);
                    double y = dataset.getYValue(seriesIndex, itemIndex);
                    System.out.println("X: " + x + ", Y: " + y);
                }
            }
        });

        // 添加图表面板到窗口
        setContentPane(chartPanel);
        pack();
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
    }

    public void addData(double x, double y) {
        series.add(x, y);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            DragPointExample example = new DragPointExample();
            example.setVisible(true);
            example.addData(1.0, 2.0);
            example.addData(2.0, 3.0);
            example.addData(3.0, 4.0);
        });
    }
}

在这个示例中,我们创建了一个折线图,通过鼠标移动事件监听器获取拖动点的值,并在控制台输出。你可以根据自己的需求进一步扩展和定制这个示例。

腾讯云提供了丰富的云计算产品和服务,其中包括云服务器、云数据库、云存储等。你可以根据具体的需求选择适合的产品来支持你的应用。具体的产品介绍和文档可以在腾讯云官网上找到。

JFreeChart官方网站:https://www.jfree.org/jfreechart/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Java Swing绘制2维3维混合动态散点图

使用的2D绘图包是jfreechart,3D绘图包是matplotlib for java V2 PS:由于和我研究内容相关,如果看到类似SolutionSet的结构体,这是Jmetal中的设置本质我只要其中的...思路 一个Jframe 四个Jpanel,网格布局 第一个三维,三个2维 布局和绑定 MatPlot3DMgr mgr1 = new MatPlot3DMgr();//mgr for obj1...matplotlib for java , 具体怎么使用可以参考使用Matplotlib 3D for JAVA画三维点阵图 if (set.get(0).getSkillFactor() == 0)...Point3D对象,ArrayListaa 的这个集合将这些组成一个颜色的集合,即在空间中使用一种legend表示,而如果想要表示不同的legend则新建一个集合对象例如bb就好 mgr.addData...e) { e.printStackTrace(); } 效果演示 注意:我的是动态更新的,也就是说我的数据源是SolutionSet,这个Set

1.2K10

HTML5语义化结构标签

使用section元素时需要注意一下3: 不要将section元素用作设置样式的页面容器,那是div的特性。...article:表示页面中一块与上下文不相关的独立内容,比如一篇文章。 article元素代表文档、页面或者应用程序中与上下文不相关的独立部分,该元素经常被用于定义一篇日志、一条新闻或者用户评论等。...例如,显示硬盘容量或者对某个候选者的投票人数占投票数总人数的比例等,都可以使用meter元素。 meter元素的常用属性如下: high:定义度量的值位于哪个被界定为高的值。...全局属性 1.draggable属性 draggable属性用来定义元素是否可以拖动,该属性有两个值:true和false,默认为false,当值为true时表示元素选中之后可以进行拖动操作,否则不能拖动...元素中的内容是通过浏览器创建的,页面装载允许使用Javascript脚本将该属性取消,取消该元素变为可见状态,同时元素中的内容也及时显示出来。

2.2K11

ireport使用教程_insertselective用法

1.2 工作流程简介 JasperReport的工作流程:首先有个xml文件,从xml文件编译出.jasper类型的文件,而以后我们真正要使用的就是编译的jasper文件。...之后在报表的空白处单击,如此即可把对象添加到报表,然后拖动对象的边框,使它的大小合适,双击即可对对象中的文本进行快速编辑。...在这里,我们可以定义许多个常用的格式,按照个人喜好进行定义,定义,在对象属性的页面上可以选择使用哪种风格,所设置的属性会自动继承。如图: 9....jfreechart1.0.0开源包实现。...不过,有一需要注意:字体尽量是宋体,字号最好在12到14之间,这样能达到最好的显示效果 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

2.3K30

ai学习记录

(星形工具也可以) 光晕工具:单击拖动确定光晕大小,“上下”调整光线数量,松开鼠标,在另一位置拖动确定光晕长度及数量,“上下”更改光晕的数量,松开鼠标绘制完成。...C 编辑路径:用小白工具选择锚,移动锚拖动方向更改弧度;按alt拖动方向杆更改为尖角使用钢笔工具时,按ctrl拖动可直接移动路径位置。...画笔(B):配合画笔库使用(F5画笔面板) 画笔转换对象,对象中点击扩展外观,再用ctrl+shift+g取消编组,分离画笔。 通过画笔库,选择图形,可直接更改描边。...比例缩放工具(s)、旋转(r)、镜像(o)、倾斜工具: 1)按住图形拖动等比缩放; 2)按住alt,单击定位中心,并弹出设置框。 3)先拖动缩放,再按住alt,显示“双三角”即可复制。...网格工具(u):网格工具中对图形变形和填充;添加网格,配合直接选择工具使用,选择锚拖动即可变形,选择颜色即可更改颜色。

2.6K20

Tableau基础知识1.文件与数据1.1 Tableau文件类型2.制表3.绘图

1.4 纬度和度量 纬度:对应(无序/有序)分类变量,用于对案例进行分组 字符串变量、日期时间变量、布尔(逻辑)变量默认设为维度 强行将连续变量拖动为维度 数据桶:分段的数据桶会被作为维度 度量名称:...代表所有度量变量的集合 度量:对应连续变量,在图表中呈现为原始信息或汇总信息 数值变量默认设为度量 强行将字符串变量拖动为度量 记录数:代表符合筛选条件的案例数量 度量值:代表相应度量的汇总数值,常与度量名称联合使用...3.3 单个-数值变量 直方图 对数值进行分组频数汇总,呈现整个取值区间上的数据分布特征。 Tableau是通过对原始数据生成分段变量(数据图)来实现。 箱图 使用百分位数体系刻画整个取值区间。...箱体最中间的粗线为P50(中位数),方框上下界为P75和P25(四分位数)。 数据用散的方式表示。...与四分位数(即方框上下界)的距离超过1.5倍四分位间距(即方框长度)的都会被定义为离群值,相应的界限在图中以线段表示。 所有数值均未超界时,该线段就是最大/最小值。

2K20

ireport使用教程视频_proe拖动图形

1.2 工作流程简介 JasperReport的工作流程:首先有个xml文件,从xml文件编译出.jasper类型的文件,而以后我们真正要使用的就是编译的jasper文件。...之后在报表的空白处单击,如此即可把对象添加到报表,然后拖动对象的边框,使它的大小合适,双击即可对对象中的文本进行快速编辑。...在这里,我们可以定义许多个常用的格式,按照个人喜好进行定义,定义,在对象属性的页面上可以选择使用哪种风格,所设置的属性会自动继承。如图: 9....jfreechart1.0.0开源包实现。...不过,有一需要注意:字体尽量是宋体,字号最好在12到14之间,这样能达到最好的显示效果。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

2.6K20

绘制漂亮的中学操场轮廓,生成带经纬度数据

图片操场可以理解为2个半圆加一个长方形合并,我们使用参考线工具来绘制,通过【左转】、【右转】调整地图旋转,确保操场水平线和水平刻度重合。拖动参考球(绿色)到合适的矩形位置。...拖动到合适位置,【锁定参考线】。...】生成右侧圆形图片下面我们需要中间的长方形,还要确保长方形的四个顶点正好在圆的上下上。...拖动参考线十字距离左侧205px;右侧参考球到圆的上下。...拖动好了以后,点击【创建图形】得到矩形图片 按着shift键,同时选择2个圆形和中间的矩形,点击【面合并】按钮图片合并隐藏参考线,如下图,我们得到了漂亮的操场轮廓。

1K30

CSS第三天

:border:20px solid blue 盒子实际大小初级计算公式: 盒子宽度 = 左边框 + 内容宽度 + 右边框 盒子高度 = 上边框 + 内容高度 + 下边框 如果盒子被撑大,可以自己计算...padding:10px 20px 上下设置10px 左右设置20px 三个值 padding:10px 20px 30px 上设置10px 左右设置20px 下设置30px 四个值 padding:...盒子宽度 = 左边框 + 左padding + 内容宽度 + 右padding + 右边框 盒子高度 = 上边框 + 上padding + 内容宽度 + 下padding + 下边框 如果盒子被撑大,...: 设置边框以外,盒子与盒子之间的距离:取值方向跟padding一样的 取值 示例 含义 一个值 margin:10px 上右下左都设置10px 两个值 margin:10px 20px 上下设置10px...PxCook的基本使用: ① 打开软件 ② 拖拽入设计图 ③ 新建项目 放大设计图:ctrl + + 缩小设计图:ctrl + - 移动设计图:空格按住不放,鼠标拖动 常用工具:量尺寸、吸颜色 从psd

33220

Linux 抓取网页实例(shell+awk)

2、抓取到总排名,如何拼接URL来抓取每个单独的游戏网页? 3、抓取到每个单独游戏网页,如何提取网页中游戏的属性信息(即评价星级、发布日期。。。)?...当时考虑过使用xml解析,因为html都是层级组织起来的类xml格式,但有些网页也不全是标准的html格式(如左括号没有右括号闭包),这会导致xml无法正确解析 后来结合自己学过的html和js知识...图表生成工具,请详见我先前的写的博客:JFreeChart学习示例 生成游戏排名趋势图,需要嵌套到JSP网页中进行显示,完整的排名趋势图,请详见我先前写的博客:JFreeChart项目实例 自动化总控脚本...回头看一看,这套系统涉及到的知识和技术比较多,有好多我从前都没接触过,如awk、JSP、Tomcat、mutt、crontab、JFreeChart 但正是有这样的机遇和挑战,才更能考研一个人独立思考...还是直接使用Java自带的图形工具绘制?

7.2K40

【UI 设计】PhotoShop基础工具 -- 移动工具

可以移动 改变图片大小 旋转等操作; 变换详细属性 :  -- 设置旋转中心 : 设置 9 个的任意一为旋转中心, 图像可以绕该旋转; -- 显示图像像素大小 : X 和 Y 表示 图像在 x..., 最后就会出现 3D 界面; 旋转工具 : 旋转工具, 可以旋转 3D 视图; 滚动工具 : 滚动工具, 可以使用鼠标左键拖动, 滚动图像; 平移工具 : 拖动鼠标 可以将3D 图形进行 上下左右平移...; 滑动工具 : 与拖动工具类似, 但是只能左右滑动, 不能上下移动; 旋转工具 : 将鼠标移动到 3D 物体上, 旋转光圈即可; 2....解锁图层 : 将第一张图片的图层解锁; 拖动图层 : 使用拖动工具, 直接将图片图层拖动到第一张图片的图层中; (3) 解析自动对齐 自动对齐解析 : 选中所有的图层, 点击自动对齐按钮, 弹出自动对齐对话框...; -- 调整位置 : 图像平移调整; -- 晕影取出 : 执行晕影去除 和 曝光度补偿, 一般勾上; -- 几何扭曲 : 补偿失真; 合成的效果 : 啥玩意啊, 不好玩;

1.8K40

使用Vue + fabric.js构建标注工具的细节

上篇文章大致介绍了使用Vue + fabric.js构建标注工具的流程,本篇则将其中的一些细节以及fabric的踩坑进行补充1.鼠标从右向左画框承接上篇的描述,使用fabric在canvas上画标注框的流程主要为...,其中红线框的部分发现设置了transform,紧接着怀疑是canvas的getRetinalScaling()影响到了zoomX和zoomY找到getRetinalScaling()的取值函数,发现是根据...bug出现的原因,自然而然就想到,解决此bug的关键点在于不能让window.devicePixelRatio成为控制的缩放因子,问题又回到了getRetinalScaling(),如果_isRetinaScaling...4.选中状态下调整框的等比例缩放问题开发完之后,产品提出这样一个bug,调整标注框拖动上下左右四个角只能等比例缩放,产品期望能随着鼠标自由地缩放,浏览一遍文档,没有找到对应的设置,那就只能再去源码里面找了...,寻找的过程在这里就不啰嗦了,总而言之,通过自下而上地翻阅源码,发现fabric的canvas有一个uniformScaling属性控制着标注框的等比例缩放,且默认值为true,将其设置成false

3.1K81

【音频处理】Polyphone 样本编辑 和 样本工具 ( 波形图 | 信息 | 频率分析 | 均衡器 | 播放器 | 终点裁剪 | 自动循环节 | 空白移除 | 音量 平衡 音调 调整 )

. ---- ( 2 ) 波形图操作 波形图操作 : 1.放大缩小 : 按住鼠标右键, 进行上下左右拖动操作; 1> 向左拖动 : 水平方向 缩小波形; 2> 向右拖动 : 水平方向 放大波形...和 结束位置; 3.基准音符 : 音源所代表的的音符, 取值范围 0 ~ 127; 4.校正 ( 音分 ) : 修正适用于同等音律调谐的声音 ; 5.采样率 : 音频的采样率, 改变采样率会导致音频重采样...; 6.类型 : 音频的类型, 单声道 或 立体声; 7.链接 : 立体声的采样属性, 链接左右声道的声音; ---- ( 3 ) 信息内容修改 修改信息 : 1.自动设置循环 : 点击循环的 双向箭头...编辑命令行脚本, linux 和 mac 下编辑 shell 脚本, Windows 下编辑 dos 脚本; 4> 编辑样本 : 使用外部工具修改样本; 5> 保存样本 : 执行脚本后会自动生成修改的脚本..., 并保存修改的版本; 6> 自动导入样本 : 修改的版本会被自动导入到 soundfont 中; ---- 4.

1.1K41

【Android 事件分发】ItemTouchHelper 实现拖动排序

/滑动 ) 重写 ItemTouchHelper.Callback 的 getMovementFlags 方法 , 在该方法中设置滑动/拖动标志位 ; 滑动 / 拖动 标志 , 可使用 ItemTouchHelper.UP...倍, 即可触发拖动操作 return 0.9f; } } 上面案例中设置的拖动幅度是 0.9f , 在 getMovementFlags 方法中设置的拖动方向是上下拖动 , 因此在该案例中..., 上下拖动的幅度必须要在 0.9 倍高度 , 拖动排序功能才能生效 ; 下面的操作中 , 拖动的幅度没有达到 条目组件 高度的 0.9 倍 , 拖动排序功能没有触发 ; 下面的操作中 , 拖动的幅度超过了...条目组件 高度的 0.9 倍 , 拖动排序功能 触发 ; 4、设置拖动排序触发操作 重写 ItemTouchHelper.Callback 的 onMove 方法 , 用户拖动操作定成功 , 会调用该方法..., 如果拖动判定不成功 , 则不会调用该方法 ; onMove 方法的 第 2 参数 , 是拖动的条目索引 ; 第 3 参数 , 是拖动的的位置条目 ; 可以通过调用 RecyclerView.ViewHolder

2.2K10

【Android 事件分发】ItemTouchHelper 简介 ( 拖动滑动事件 | ItemTouchHelper.Callback 回调 )

---- ItemTouchHandler 是 Google 提供的一个工具类 , 主要针对 RecyclerView 的上下左右拖动事件 进行处理 ; 如 : 侧滑删除 功能 , 条目位置拖动交换...功能 , 就可以使用 ItemTouchHandler 实现 ; 如果 RecyclerView 没有添加 ItemTouchHandler , 只能上下滚动 , 左右拉动 , 没有效果 , 也无法进行拖动交换条目操作...添加拖动事件 ; 添加 , 该 RecyclerView 自动可以进行上下左右拖动操作 , 用户可以自行添加相关的回调 ItemTouchHelper.Callback , 响应这些事件 ; 初始化..., 长按激活拖动操作 , 可用于拖动交换位置操作 ; 拖动 / 滑动 标志位可以使用 ItemTouchHelper.UP | ItemTouchHelper.DOWN , 或运算得到想要的标志位...; 将或运算结果传入 makeMovementFlags 方法 , 第一个参数是设置拖动标志位 , 第二个参数是设置滑动标志位 ; 设置 左右滑动 , 上下拖动代码如下 : /** *

1.7K10

PS基础之移动工具和分布对齐

移动工具 作用:可以移动图层,在图层面板中,选中要移动的图层,用移动工具拖动 复制图层:选中要复制的图层,在使用移动工具时,按住alt键拖动鼠标,完成复制 自动选择:勾选,可以通过点击图像,直接定位到锁电机图像所在的图层...对齐:两个以上的图层可以进行对齐(居中,上下左右进行对齐) 可以用固定宽高度,新建图层还是三键+N快点,ctrl+shift+alt+N 把所有图层全部选中在进行对齐和排序 合并图层:选中图层右键点击合并即可变为一个图层或者...Ctrl+E 把图层并为一组:选中图层按Ctrl+G 左右移动距离可以使用平均分布来调整 选中图层对图层居中对齐 分布:三个以上的图层可以进行分布(排列的距离) 先选中需要对齐、分布的图层或图层组,使用移动工具...,在属性栏上,对应的分布及对齐按钮 案例2:画双11图像 先把前景色调为白色,背景色调为红色,选中矩形工具,固定大小为40px,Alt+Del 扣出一个正方形为40px的白色正方形,再使用移动工具选中小方块同时按住...直接按住alt拖动组就可以复制一组了,两组小方块之间的距离也可以使用键盘上的上下左右来微调 复制组中一个小方块,然后拖动到组的外面去,复制三个即可 ?

1.4K20

这个Element table 上下移需求不简单

前言 Element table 上下移动,听起来是不是很简单的需求,产品的描述也简单:表格数据支持拖动上下移,支持通过选择表格行数据点击按钮上下移。...思路梳理 抛开业务复杂度,只分析这一小部分的上下移功能技术层的需求实现思路,上下移功能分为两种操作方式,一种是表格数据行拖动上下移;一种是复选框选中数据,点击上下移按钮实现表格数据行移动 分析到这里的时候发现需求描述里面对于开发人员来讲...,功能描述不完善 问题1:表格数据行拖动上下移,是单行拖动,还是多行拖动?...带着问题找产品经理确认,结果产品经理说他也没想到还有这么好些情况 和产品经理一波 battle 的结果 问题1:表格数据单行拖动上下移 问题2:按钮操作上下移,支持数据行多选,单行移动 问题3:表格数据不连续选中...表格数据行拖动上下移 表格数据行拖动这个原生实现就不考虑了,时间代价有点高,一般找个 npm 库就行,目前不错的拖拽库有 Sortable.js 官方有 Vue 版 Vue.Draggable ,因为拖动需求比较简单

1.4K30

scrum工具leangoo时间线视图管理项目

鼠标按住操作区空白处,上下拖动即可排序。 2、点击列表栏操作区中的 “+” ,可以快速添加任务。 点击任务所在行的空白处或点击任务在时间线区域的时间条,即可弹出任务操作框。...如果任务已设置好开始、截止时间,可以通过拖动时间线区域的时间条来调整任务开始、截止时间。 管理任务依赖 在时间线视图里,也可以快速设置任务依赖关系。...将鼠标移至任务的时间条上,可以看到时间条上前置和后置,按住后置,拖拽到另外一个任务的前置,即可设置任务间的依赖关系。...点击连线就可以解除该依赖 时间线拖动模式 1、「自由拖动」,不管任务之间有没有依赖关系,拖动一个任务不影响其他任务; 2、「整体拖动」,如果任务之间有依赖关系,当前任务移动,关联的任务就跟着移动且移动的距离一致...; 3、「弹性拖动」,如果任务之间有依赖关系,拖动前置任务的时间,后置任务的时间也会顺延至前置任务结束的时间

64630

uni-app 微信小程序中关于 map 地图使用案例分享

这篇文章,我将带领大家使用微信内置地图详细讲解关于如何配置地图、打开地图和使用地图。...4、实现调用地图组件方式二 4.1 先去获取当前所在位置的经纬度 4.2 很据纬度获取详细的地址  4.3 再把控件定在地图的中心,然后手动拖动地图,从而实现手动选择收货地址的功能。  ...latitude::中心纬度 longitude:中心经度 markers:数组类型Array,标记,用于标记你目前所处的位置。 scale:缩放级别,取值范围为3-20,默认16。...4.3 再把控件定在地图的中心,然后手动拖动地图,从而实现手动选择收货地址的功能。...如果感觉小编的分享对您有所帮助的话,还请赞、收藏 + 关注哦^_^

3.8K20

Android关于SeekBar无法点击到最大值问题解决方法记录(推荐)

255变成了0-9范围缩小了很多,范围缩小,控件没有变,也就是每个进度点到下一个进度的距离就变长了,众所周知,SeekBar是支持拖动以及点击两种方式控制,在我无聊瞎时发现,我怎么,这个进度条都无法通过点击跳到最大值...这里也不细说各种判定,简略说也就和我们平时计算一个线段平均分N段一样,那么也就是每个进度都有一段范围长的,如上面我的范围是0-9取值其实是10个数,10个值所以我们进度条肯定是将线段长度分成9段[一条线段是有两个端点...所以不是不到,而是这个太难点到了。唉–平时话少,也不知道解释得到位不到位,若还是不懂,可以自己实际用一个SeekBar把控件长度定大一取值的max定小一,然后自己体会一下吧= =!...那么为啥我们拖动可以到最大值呢?...其实这个很好解释,因为拖动时控件处理MOVE事件,大家应该知道控件touch事件,你要抬起手这个焦点才会被释放,所以我们一直拖,控件都会处理这个事件,而能到最大值原因是我们实际是拖到了或者超过最大值位置的那么此时通过一系列计算判定也就跑到了最大值去了

63810
领券