qml鼠标拖动_qml实现窗口的拖拽效果
核心思想是:
在main中引入QMainWindow对象,将qml文件作为该对象的widget,并将该对象注册到qml中,然后再qml中通过识别鼠标的位移来更改这个mainwindow的pos属性。
实现:#include
#include
#include
#include
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QMainWindow window;
QDeclarativeView* v = new QDeclarativeView;
window.setCentralWidget(v);
v->setSource(QUrl::fromLocalFile(("draw_rectangles.qml")));
// expose window object to QML
v->rootContext()->setContextProperty("mainwindow",&window);
window.setStyleSheet("background:transparent;");
window.setAttribute(Qt::WA_TranslucentBackground);
window.setWindowFlags(Qt::FramelessWindowHint);
window.show();
app.exec();
}
qml:Item {
Rectangle {
color: "blue"
x: 50; y: 50; width: 100; height: 100
MouseArea {
id: mouseRegion
anchors.fill: parent;
property variant clickPos: "1,1"
onPressed: {
clickPos = Qt.point(mouse.x,mouse.y)
}
onPositionChanged: {
var delta = Qt.point(mouse.x-clickPos.x, mouse.y-clickPos.y)
mainwindow.pos = Qt.point(mainwindow.pos.x+delta.x,
mainwindow.pos.y+delta.y)
}
} //mousearea
} //rectangle
}
转载:http://blog.csdn.net/sgnh123456/article/details/8055654
qml鼠标拖动_qml实现窗口的拖拽效果相关推荐
- Javascript实现拖拽效果
我们执行拖拽操作时, 1.按住某元素 2.移动鼠标 3.移动鼠标到相应位置后松开鼠标 基于以上操作,页面拖拽效果需要三个事件 onmousedown onmousemove onmouseup 在on ...
- JQuery Dialog(JS模态窗口,可拖拽的DIV)
JQuery Dialog(JS模态窗口,可拖拽的DIV) 吴剑 2012-08-08 原创文章,转载必需注明出处:http://www.cnblogs.com/wu-jian/ 效果图 调用示意图 ...
- MFC中窗口实现拖拽文件功能
MFC窗口拖拽文件功能指的是用鼠标将文件拖拽入窗口后,在窗口中可以获取拖拽文件的绝对路径,如图1所示. 图1 文件拖拽功能 实现窗口的拖拽文件功能,首先要将窗口注册为放置拖拽文件的目标,之后在窗口中响 ...
- JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
转自<JS实现漂亮的窗口拖拽效果(可改变大小.最大化.最小化.关闭)>:http://www.jb51.net/article/73157.htm 这篇文章主要介绍了JS实现漂亮的窗口拖拽 ...
- js实现弹出窗口的拖拽功能
弹出窗口的拖拽 拖拽功能运用到的有 onmousedown 事件,onmousemove 事件以及 onmouseup 事件 弹出窗口基本步骤: 1.点击点击弹出窗口按钮弹出窗口: 2.窗口弹出后,鼠 ...
- 原生JS实现鼠标按下拖拽效果
原生JS实现鼠标按下拖拽效果 <!DOCTYPE html> <html lang="en"><head><meta charset=&q ...
- DOM 案例——(美团外卖下拉框菜单、半透明——信息滑入、模态窗口拖拽效果、放大镜效果、滚动条滑到一定位置的固定导航栏、12306购票网站多级联动、斗鱼TV无规则弹幕特效、百度搜索条动态输入下拉瀑布)
目录 1.缓动动画--美团外卖下拉框菜单 2.半透明--信息滑入 3.模态窗口拖拽效果 4.放大镜效果 5.滚动条滑到一定位置的固定导航栏 6.12306购票网站多级联动 7.斗鱼TV无规则弹幕特效 ...
- html实现鼠标拖拽按钮,JS实现鼠标按下拖拽效果
原生js实现鼠标按下拖拽效果,供大家参考,具体内容如下 鼠标拖动 body { margin: 0; } div { width: 200px; height: 200px; position: ab ...
- 【加强版】js原生实现拖拽效果,这次没有用document的mousedown、mousemove、mouseup事件我们来点实际的(但是有个弊端:拖拽过程中鼠标会变成一个禁用符号,不太友好)
<div class='dragged'></div> //初始化需要拖拽的列initDrags() {var arr = document.querySelectorAll( ...
最新文章
- The system cannot find the file specified
- NYOJ 108士兵杀敌(一)
- 使用Yeoman定制前端脚手架
- java 去掉大量if else_java如何消除太多的if else判断?
- luogu4407 [JSOI2009]电子字典 字符串hash + hash表
- 洛杉矶手机资费9.9美元包打一年
- Golang bytes.Buffer 用法精述
- 23种设计模式-装饰模式
- oracle not in 改为 not exist
- 08 Django组件-Forms组件
- Nagios 分布式
- golang 格式“占位符”%d,%f,%s等应用类型
- C# Datatable的Select方法
- 一键查看MTALAB支持的字体
- tolua unity 报错_关于LUA+Unity开发_toLua篇【二】
- 微信小程序网络请求服务器php接口获取数据库数据信息
- HTTP状态码 1xx,2xx,3xx,4xx 意思
- Pyhon 登陆邮箱
- python lncrna_【云计算】LncRNA生信分析案例
- 如何快速搭建一个微服务架构
热门文章
- 计算机窗口标题栏控制菜单图标,职称计算机考试资料(八)
- 52单片机继电器c语言程序,STC89C52单片机温控继电器代码
- 企业实施应用ERP系统项目心得
- 熊掌号php页面改造,本站Emlog熊掌号页面改造记录
- 三星和“毒苹果” 好一对“欢喜冤家”
- 入职外包一个月,我离职了。
- Revit中柱与梁不能连接问题和“柱断墙梁”功能介绍
- 图像变换——向前映射和向后映射
- SAP UI5 应用开发教程之五十九 - 如何在 SAP UI5 应用里显示世界地图试读版
- CiteSpace安装教程