OpenCV高级图形用户界面(9)更改指定窗口的位置函数moveWindow()的使用
- 操作系统:ubuntu22.04
- OpenCV版本:OpenCV4.9
- IDE:Visual Studio Code
- 编程语言:C++11
算法描述
将窗口移动到指定的位置。
cv::moveWindow() 函数用于更改指定窗口的位置。你可以使用这个函数来移动窗口到屏幕上的任何位置。
函数原型
void cv::moveWindow
(const String & winname,int x,int y
)
参数
- 参数winname 窗口的名称。
- 参数x 窗口的新 X 坐标。
- 参数y 窗口的新 Y 坐标。
代码示例
#include <iostream>
#include <opencv2/opencv.hpp>int main()
{// 加载图像cv::Mat img = cv::imread( "/media/dingxin/data/study/OpenCV/sources/images/hawk.jpg", cv::IMREAD_COLOR );if ( img.empty() ){std::cerr << "Error: Image not found!" << std::endl;return -1;}// 创建窗口std::string winname = "Example Window";cv::namedWindow( winname, cv::WINDOW_NORMAL ); // 设置窗口大小可变// 初始位置int x = 100;int y = 100;// 显示图像cv::imshow( winname, img );// 使用键盘事件移动窗口while ( true ){int key = cv::waitKey( 10 ); // 等待 10 毫秒if ( key == 27 ){ // 按下 ESC 键退出break;}else if ( key == 'a' ){ // 向左移动x -= 10;}else if ( key == 'd' ){ // 向右移动x += 10;}else if ( key == 'w' ){ // 向上移动y -= 10;}else if ( key == 's' ){ // 向下移动y += 10;}// 更新窗口位置cv::moveWindow( winname, x, y );}// 关闭所有窗口cv::destroyAllWindows();return 0;
}
运行结果
动态效果,静态图看不出效果,你可以按a键、s键、w键、d键来体验下窗口移动的感觉。
相关文章:
OpenCV高级图形用户界面(9)更改指定窗口的位置函数moveWindow()的使用
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 将窗口移动到指定的位置。 cv::moveWindow() 函数用于更改指定窗口的位置。你可以使用这个函数来移动窗口到屏幕上的任何位置。 函数原型 void …...
华山论剑之Rust的Trait
华山论剑,群雄荟萃,各显神通。武林中人,各有所长,或剑法飘逸,或掌法刚猛,或轻功绝顶。这就好比Rust中的trait,它定义了一种武功套路,而不同的门派、不同的人,可以将这套武…...
AI 编译器学习笔记之七五 -- pdb 使用方法
1、进入调试状态有2种方法:Python工具PDB调试器的使用方法详解_python_脚本之家 (jb51.net) a) 在重新种设置断点正常执行:遇到代码中插入的pdb.set_trace()或者breakpoint()进入调试状态 b) 不修改命令行:直接使用 python3 -m pdb pdb_demo.…...
15分钟学Go 第8天:控制结构 - 循环
第8天:控制结构 - 循环 在Go语言中,循环是一种基本的控制结构,用于重复执行一段代码。今天我们将深入了解Go语言中的for循环,包括它的各种用法、语法结构、以及如何在实践中有效地应用循环。 1. for 循环的基本概念 for循环是G…...
后端接收参数的几种常用注解
目录 一、RequestParam 二、RequestBody 三、PathVariable 四、RequestHeader 五、RequestAttribute 六、RequestPart 七、Valid 一、RequestParam 1.作用 用于将请求中的 查询参数 或 表单参数 绑定到方法的参数上。支持 GET 和 POST 请求。 2.使用方法 GetMappin…...
如何使用docker在linux中配置C++环境
目录 1. 安装docker 2. 配置C环境 1)启动ubuntu:22.04容器 2)配置编译环境G 3)安装软件 4)测试 1. 如何打包容器生成tar? a. 生成容器镜像 b. 将镜像压缩成tar 2. 如何将容器内部的端口映射至宿主机…...
darknet_ros 使用教程
首先是git clone可能会因为到没有权限的问题(SSH),此时输入 git clone --recursive https://github.com/leggedrobotics/darknet_ros.git 下载成功之后 catkin_make -DCMAKE_BUILD_TYPERelease catkin失败原因(在CMakefile中&…...
第九课 Vue中的v-bind指令拓展
Vue中的v-bind指令 示例拓展 1)切换样式 <style>.test{width: 100px;height: 100px;border: 3px solid #000;}.bg{background: red;}</style><div id"app"><input type"button" value"点击切换样式" click&qu…...
DOIP协议介绍2-Diagnostic power mode information request (0x4003)消息
DOIP(Diagnostic communication over Internet Protocol)是基于以太网的通讯协议,用于对UDS协议的数据进行传输,规范于ISO13400标准。DOIP的Type:Diagnostic power mode information request(0x4003&#x…...
Eclipse 软件:配置 JDBC、连接 MySQL 数据库、导入 jar 包
目录 一、配置 JDBC (一)作用 (二)官网下载 1. 下载链接 2. 下载 3. 补充:压缩包分类与用途 (三)eclipse 导入 JDBC 的 jar 包 (四)加载数据库驱动 (五…...
二叉树中的最长交错路径
题目链接 二叉树中的最长交错路径 题目描述 注意点 每棵树最多有 50000 个节点每个节点的值在 [1, 100] 之间起点无需是根节点 解答思路 要找到最长交错路径,首先想到的是深度优先遍历因为起点无需是根节点,所以对于任意一个节点,其可以…...
高校企业数据可视化平台功能介绍/特色功能
数据可视化平台是一款适用于高校教学和各领域企业的零门槛可视化工具,能够解决高校数据分析与可视化类课程教学、实训问题。平台采用B/S结构,用户不需要下载客户端,可通过浏览器进行访问。 数据可视化平台提供多种指标设计,学…...
RHCE第三次笔记SSH
第三章 远程连接服务器 1、远程连接服务器简介 (1)什么是远程连接服务器 远程连接服务器通过文字或图形接口方式来远程登录系统,让你在远程终端前登录 linux 主机以取得可操作主机接口(shell ),而登录后…...
JAVA基础-包装类
文章目录 包装类1 概述2 Integer类2.1 Integer类构造方法2.2 Integer类成员方法 3 基本类型与字符串之间的转换3.1 基本类型转换为String3.2 String转换成基本类型 4 底层原理 第六章:算法小题练习一:练习二:练习三:练习四&#x…...
复合逻辑运算与复合逻辑门
或非门(NOR gate) 是一种基本的逻辑门,它结合了“或”(OR)和“非”(NOT)操作。或非门的输出是输入信号的否定,只有在所有输入都为零时,输出才为一。 与非运算࿰…...
工厂模式~
现实世界中的例子 考虑一个招聘经理的情况。一个人不可能为每一个职位都进行面试。根据职位空缺,她必须决定并将面试步骤委托给不同的人。 用简单的话来说 它提供了一种将实例化逻辑委托给子类的方法。 维基百科的解释 在基于类的编程中,工厂方法模式是…...
Elasticsearch基本使用及介绍
Elasticsearch 1. 关于各种数据库的使用 关于MySQL:是关系型数据库,能清楚的表示数据之间的关系,并且,是基于磁盘存储的,可以使用相对较低的成本存储大量的数据 关于Redis:是基于K-V结构的在内存中读写数…...
10. PH47代码框架文件组织
通过之前章节对PH47体系的介绍,读者对PH47能建立起了初步的概念及掌握各主要构成部分的使用开发方法。从本章节开始,就将对PH47代码的二次开发内容进行具体讲述。 本部分就将对PH47框架当中代码文件的组织方式及功能作用进行介绍,对于将来熟…...
LabVIEW提高开发效率技巧----VI继承与重载
在LabVIEW开发中,继承和重载是面向对象编程(OOP)中的重要概念。通过合理运用继承与重载,不仅能提高代码的复用性和灵活性,还能减少开发时间和维护成本。下面从多个角度介绍如何在LabVIEW中使用继承和重载,并…...
4.8 大数据发展趋势
文章目录 今天,我想与大家探讨一个充满潜力和变革的主题——大数据的发展趋势。大数据不仅正在改变我们的工作和生活方式,更是推动社会进步和经济发展的关键因素。 首先,让我们看看国内的大数据发展趋势。中国政府高度重视大数据产业&#x…...
OpenClaw效率对比:Qwen2.5-VL-7B与传统OCR工具在文档处理中的表现
OpenClaw效率对比:Qwen2.5-VL-7B与传统OCR工具在文档处理中的表现 1. 测试背景与动机 最近在整理公司历史项目文档时,遇到了一个棘手的问题:大量扫描版PDF和图片格式的技术文档需要数字化处理。这些文档包含代码片段、手写注释和复杂表格&a…...
多智能体工程实践升级版:基于 Spring AI Alibaba 构建可扩展、高并发、生产级方案策划系统
多智能体工程实践升级版:基于 Spring AI Alibaba 构建可扩展、高并发、生产级方案策划系统 1. 引言 当业务问题从“问答”升级到“方案生成、任务拆解、跨角色协同、执行闭环”时,单一智能体往往很快碰到能力边界。 原因并不复杂: 单 Agent 擅长基于统一上下文做推理,但…...
SEO优化师如何制定优化策略和计划_SEO优化师如何分析网站流量和排名数据
SEO优化师如何制定优化策略和计划_SEO优化师如何分析网站流量和排名数据 前言 SEO(搜索引擎优化)在现代数字营销中扮演着至关重要的角色。对于一个SEO优化师来说,制定有效的优化策略和计划是关键,分析网站流量和排名数据能帮助他…...
BLDC无刷电机脉冲注入启动法及其保护功能与控制原理
BLDC 无刷电机 脉冲注入 启动法 启动过程持续插入正反向短时脉冲;定位准,启动速度快; Mcu:华大hc32f030; 功能:脉冲定位,脉冲注入,开环,速度环,电流环&#x…...
电路接口技术解析:从TTL到无线通信的演进
1. 电路接口概述:信号传输的关键桥梁在嵌入式系统和电子电路设计中,接口技术就像城市之间的高速公路系统。当不同模块需要通信时,就像不同方言的人群需要找到共同语言。我曾参与过一个工业控制器项目,CPU与传感器间的通信故障导致…...
基于 LangGraph 的 Agentic RAG 核心架构
核心摘要:当资深运维专家离场,留下的往往不仅是空荡荡的工位,更是无数无法被Wiki捕捉的“隐性知识”。本文将摒弃空洞的概念炒作,基于 Agentic RAG 架构,利用 LangGraph 与 Qwen2.5,从零构建一个具备“反思…...
Matlab仿真研究:三机并联风光混合储能并网系统的建模与控制策略实现
Matlab仿真三机并联风光混合储能并网系统,风光储并网,微电网系统,光伏电池模型,永磁同步风机,电压电流控制,PQ控制 波形正确,结构完整有参考文献,详情见图片 三机并联风光混合储能并…...
前端TypeScript吐槽:别再让你的代码变成类型地狱!
前端TypeScript吐槽:别再让你的代码变成类型地狱! 毒舌时刻 前端TypeScript就像安全套——用对了能保护你,用错了会让你难受。TypeScript、tsconfig、类型定义... 一堆TypeScript工具让你晕头转向,结果你的代码要么类型定义复杂得…...
2025届必备的降AI率神器推荐榜单
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 此刻知网已然集成了AI检测功能,是针对学术文本里的人工智能生成痕迹去做识别的。…...
Claude Code 进阶攻略:搞定内置 /loop,用大白话玩转 Cron,一行搞定自动化任务
每天免费领 1亿 Token,白嫖DeepSeek、GLM、MiniMax、Kimi等大模型! 本文写给:天天跟 Claude Code 打交道的程序员们,教你把那些烦人的监控活儿从“肉眼盯着”变成“系统自动报”。 等代码构建的时候,你通常在干嘛&…...
