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

网站开发需要什么基础知识seo优化教学视频

网站开发需要什么基础知识,seo优化教学视频,用织梦同时做两个网站,永嘉县住房和城乡规划建设局网站mousePressEvent 和 eventFilter 里 event.pos 不一样,一定要注意 eventFilter里event.pos 直接返回相对于label左上角的坐标,就不要再mapFrom mousePressEvent 里event.pos 返回是相对于窗口左上角的坐标,需要用mapFrom返回label左上角的…

mousePressEvent 和  eventFilter 里 event.pos 不一样,一定要注意

eventFilter里event.pos 直接返回相对于label左上角的坐标,就不要再mapFrom

mousePressEvent 里event.pos 返回是相对于窗口左上角的坐标,需要用mapFrom返回label左上角的坐标


event->pos()  :  以图片的左上角为中心(0,0),右下角:(图片宽度,图片高度)

mapFrom : 相当于 ( -x'+event->pos().x,-y'+event->pos().y )  ,其中 x' 和 y ' 值请看下图


 

 


#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACEclass MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();bool eventFilter(QObject* watched, QEvent* event) override;void mousePressEvent(QMouseEvent* event) override;private:Ui::MainWindow *ui;void onMouse(QMouseEvent* event);
};
#endif // MAINWINDOW_H
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QEvent>
#include <QMouseEvent>
#include <QDebug>
MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);ui->label->setAttribute(Qt::WA_Hover);  // 确保 QLabel 能接收到鼠标移动事件ui->label->setMouseTracking(true); //鼠标移入label上移动就会触发MouseMove,去掉这行后,只有鼠标按下且移动才会触发ui->label->installEventFilter(this);
}MainWindow::~MainWindow()
{delete ui;
}// 添加事件过滤器处理鼠标事件
bool MainWindow::eventFilter(QObject* watched, QEvent* event)
{if (watched == ui->label) {if (event->type() == QEvent::MouseMove) {QMouseEvent* mouseEvent = static_cast<QMouseEvent*>(event);onMouse(mouseEvent);return true;}else if (event->type() == QEvent::Leave) {//qDebug()<<"li kai l";}}return QMainWindow::eventFilter(watched, event);
}void MainWindow::onMouse(QMouseEvent* event)
{// 将QLabel的坐标转换为图像坐标QPoint pos = ui->label->mapFrom(this, event->pos());  //eventFilter里不要用mapFrom,因为event.pos直接返回的就是相对于label左上角的qDebug()<<"onMouse event->pos() :"<<event->pos(); //直接返回相对于label左上角坐标qDebug()<<"onMouse mapFrom pos :"<<pos;
}
void MainWindow::mousePressEvent(QMouseEvent* event) {qDebug() << "mousePressEvent  event->pos :"<<event->pos(); //相对于窗口的左上角QPoint pos = ui->label->mapFrom(this, event->pos());qDebug() << "mousePressEvent mapFrom pos :"<<pos;//mapFrom将窗口左上角坐标转为相对于label左上角qDebug() << "mousePressEvent event->globalpos :"<<event->globalPos(); //显示屏窗口左上角}

globalPos是相对于 显示屏屏幕左上角的位置 ,注意是相对于显示屏屏幕


最后发现  

mousePressEvent 和  eventFilter 里 event.pos 不一样,一定要注意

event.pos 在eventFilter里 直接返回相对于label左上角的坐标,就不要再mapFrom

FR:徐海涛(hunkxu)

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

相关文章:

  • 智联招聘网站怎么做两份简历模板在线优化工具
  • 做美女图片网站需要备案吗太原网站制作推广
  • 福田网站建设价格口碑营销案例ppt
  • 邯郸网站开发定制上海seo公司排名榜
  • 做网站的公司都缴什么税金神马快速排名优化工具
  • 1688网站建设与维护免费网站的平台
  • 织梦安装网站后图片北京seo专员
  • 做a视频在线观看网站软文写作的十大技巧
  • 做网站能赚多少邯郸seo
  • 网站建设方案范例kol推广是什么意思
  • 山西建设银行官方网站如何做线上销售和推广
  • .tv做网站怎么样如何创建网站平台
  • dnf怎么做钓鱼网站电商数据统计网站
  • 微信公众号微网站开发百度最新秒收录方法2022
  • 如何做国外的电商网站微信营销的10种方法技巧
  • wap自助建论坛网站seo网站推广工具
  • 婚庆网站模板长春网站优化指导
  • 织梦系统做导航网站360开户
  • 宁波seo怎么做优化公司云南seo简单整站优化
  • 做代购在哪个网站进货怎样做网站推广
  • 南通快速建设网站服务关键词优化seo外包
  • 青岛的互联网公司有哪些系统优化
  • 观澜做网站学生个人网页制作html
  • 做go kegg的在线网站品牌网络推广
  • 苏州网站开发建设公司网站推广搜索
  • 做诚信通网站郑州抖音seo
  • idea做一个自己的网站教程seo优化软件免费
  • 聊城高端网站制作推广手段有哪些
  • 网站上做旅游卖家要学什么软件百度推广怎么优化排名
  • 花生壳域名直接做网站网站优化seo培