2 small bottle cap Small_bottle_cap 于 2016.01.18 16:35 提问

Qt鼠标点击两个点并自动连接这两个点

在工作区添加两个控件(视为两个点),实现点击鼠标连接两个点,要求:鼠标点击第一个点存储坐标作为线段的起点,此时不画线,再点击第二个点,获取线段的终点,如果起点和终点有一个坐标相同直接相连,如果不同找两个调节点连成平行或垂直的线段。不清楚怎么用代码实现,添加按钮触发事件怎么添加?

2个回答

91program
91program   Ds   Rxr 2016.01.18 16:48

即然是增加了两个控件,那么就应该查这两个控件是如何响应鼠标点击的。
因为你没有说是什么控件,无法分析。

suxiaojian1987
suxiaojian1987   2016.04.11 17:08

我也在想办法实现这个功能,目前的想法是,下根据两个控件的中心位置计算一个路径出来,然后在根据落点的位置对最后一段连线的位置做一下调整
,避免连线与控件边界重合

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
matlab中如何用鼠标随机取得坐标系上的点
GINPUT Graphical input from mouse. %   [X,Y] = GINPUT(N) gets N points from the current axes and returns %   the X- and Y-coordinates in length N vectors X and Y.  The cursor %   can be positioned
实现鼠标自动点击
$(function() { var odiv = document.getElementByIdx_x("uid"); odiv.onclick = function(){ alert("abc"); } odiv.click(); })
获取鼠标点击的屏幕位置坐标
APlayerController* PC= nullptr; if(GetWorld()) { PC = GetWorld()->GetFirstPlayerController(); } FVector2D MousePos; if(PC) PC->GetMousePosition(MousePos.X,MousePos.Y);
获取鼠标点击处的控件并获取其坐标
int mouse_x = QCursor::pos().x();//鼠标点击处横坐标int mouse_y = QCursor::pos().y();//鼠标点击处纵坐标QWidget *action = QApplication::widgetAt(mouse_x, mouse_y);//获取鼠标点击处的控件QPoint GlobalPoint(action->mapToGlobal(QPoi
Qt 点线效果
一. 前言之前看到过使用JavaScript语言写这种点线效果,于是无聊自己用Qt翻写了下,效果感觉还行就来和大家分享下,好了进入主题二. 效果演示 这就是效果=-=三. 代码说过了,看过了,下面就直接上代码了 在写这个效果之前,肯定要定义一些点了typedef struct Point{ QPointF pos; //点的位置 QPointF movePos;
qt creator 画点线,跟踪鼠标
今天主要研究如何在屏幕上绘制电线
QWT 跟随鼠标显示曲线数值
http://blog.csdn.net/desert187/article/details/12848305 Qwt是用于绘制科学图形的Qt库。Qwt中的Picker是一个拾取器,通俗的说就是用户的鼠标指到哪里就获得哪里的信息(往往是x,y坐标)。QwtPicker类所获得的坐标信息是依赖于窗口的。而在Qwt中,用户所见的科学坐标系是绘制在Plot上的。Plot坐标不与窗口坐标相比,不但原
Qt工作笔记-使用QCustomplot实现鼠标拖动数据点画曲线
运行截图如下:逻辑很简单,下面直接上代码。widget.h#ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include "qcustomplot.h" namespace Ui { class Widget; } class Widget : public QWidget { Q_OBJECT public...
QT类学习系列(2) - QT QPainter用法(包含画点,画圆,画矩形,画线等)
http://blog.csdn.net/wz2051900044/article/details/53160216
OpenCV 2 学习之”鼠标描点画图“
平台:Windows7 软件:VS2013, OpenCV 2.4.9 ************************************************************************************************************* 实现的功能(> _ 鼠标的描点画图。左击描点、连线,右击初始化,”Esc“键退出,”1“变为灰度