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键来体验下窗口移动的感觉。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56342.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++大坑之——多继承(菱形继承)

文章目录 前言一、多继承是什么&#xff1f;1. 多继承概念2. 多继承语法 二、菱形继承1. 为什么会有菱形继承问题&#xff1f;2. 代码感受菱形继承3. 虚拟继承1&#xff09;虚拟继承概念及语法2&#xff09;虚拟继承的原理 4. 为什么要有虚基表&#xff1f;5. 为什么要有偏移量…

bootloader跳转app卡死(IAP卡死)

1、 关闭所有中断再跳转APP 一般bootloader跳转到APP时要关闭app中用到的中断(防止中断打断程序的运行&#xff0c;导致程序跑飞&#xff09;&#xff0c;那么查看系统中用到的中断&#xff1a;串口中断、滴答定时器中断&#xff0c;所以&#xff0c;跳转之前要关闭这两个中断&…

Vlan和Trunk

VLAN的定义 虚拟局域网&#xff0c;用来在二层网络中隔离广播域不同VLAN的设备在二层网络中无法互相通讯&#xff08;二层隔离技术&#xff09; VLAN的转发过程举例 源MAC字段后加上VLAN TAG字段&#xff0c;其中VLAN ID用来标识VLAN。 PC发送数据帧进入交换机&#xff0c;会…

使用SearXNG-搭建个人搜索引擎(附国内可用Docker镜像源)

介绍 SearXNG是聚合了七十多种搜索服务的开源搜索工具。我们可以匿名浏览页面&#xff0c;不会被记录和追踪。作为开发者&#xff0c;SearXNG也提供了清晰的API接口以及完整的开发文档。 部署 我们可以很方便地使用Docker和Docker compose部署SearXNG。下面给出Docker部署Se…

vscode插件live server无法在手机预览调试H5网页

环境 Window10、vscode&#xff1a;1.94.2、Live Server&#xff1a;v5.7.9、Live Server (Five Server)&#xff1a;v0.3.1 问题 PC端预览没有问题&#xff0c;但是在手机点击链接显示访问失败 排查 1. 是否同一局域网 意思就是电脑、手机是不是访问同一个网络。电脑插得…

微信互助学习平台(lw+演示+源码+运行)

摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了微信互助学习平台的开发全过程。通过分析微信互助学习平台管理的不足&#xff0c;创建了一个计算机管理微信互助学习平台的方案。文章介绍了微信互助学习平台的…

performance.timing

performance.timing 是 Web 性能 API 的一部分&#xff0c;用于获取页面加载过程中的各个时间戳。这些时间戳可以帮助开发者分析页面加载性能&#xff0c;找出潜在的瓶颈。performance.timing 返回一个 PerformanceTiming 对象&#xff0c;该对象包含了多个属性&#xff0c;每个…

论文精读:TiC-CLIP: Continual Training of CLIP Models(一)

论文精读&#xff1a;TiC-CLIP: Continual Training of CLIP Models&#xff08;一) 论文介绍 在多模态学习领域&#xff0c;CLIP&#xff08;Contrastive Language-Image Pre-training&#xff09;模型因其在图像和文本联合嵌入方面的卓越性能而受到广泛关注。然而&#xff0…

【C++】vector(1)

&#x1f608;个人主页: 起名字真南 &#x1f608;个人专栏:【数据结构初阶】 【C语言】 【C】 目录 引言1 vector 的基本知识1.1 vector 的特点 2 vector 的主要功能和操作2.1 vector 的构造2.2 vector 的增删改查2.3 vector 的容量 引言 在C的标准模板库&#xff08;STL&…

MySQL——数据库

什么是数据库 数据库&#xff08;DB , DataBase&#xff09;概念&#xff1a;数据仓库&#xff0c;软件&#xff0c;安装在操作系统&#xff08;window&#xff0c;linux&#xff0c;max&#xff0c;...&#xff09;之上学习数据库最重要的就是学习SQL语句存储500万以下的数据…

鸿蒙HarmonyOS————ArkTs介绍(1)

最近除了人工智能&#xff0c;还有一个很火的HarmonyOS&#xff0c;HarmonyOS是华为公司开发的一款面向全场景的分布式操作系统&#xff0c;旨在为消费者提供跨设备无缝协同体验。它支持多种智能终端设备&#xff0c;包括但不限于智能手机、平板电脑、智能穿戴设备、智能家居设…

<Project-11 Calculator> 计算器 0.3 年龄计算器 age Calculator HTML JS

灵感 给工人发工资是按小时计算的&#xff0c;每次都要上网&#xff0c;我比较喜欢用 Hours Calculator &#xff0c;也喜欢它的其它的功能&#xff0c; 做个类似的。 我以为是 Python&#xff0c;结果在学 javascript 看 HTML&#xff0c;页面的基础还停留在 Frontpage 2000…

【学术论文投稿】自动化运维:解锁高效运维的密钥

【连续三届IEEE出版|EI检索】第三届图像处理、计算机视觉与机器学习国际学术会议&#xff08;ICICML 2024&#xff09;_艾思科蓝_学术一站式服务平台 更多学术会议请看&#xff1a;https://ais.cn/u/nuyAF3 目录 引言 一、自动化运维概述 1. 自动化运维的定义 2. 自动化运…

Qt中使用线程之QRunnable

1、自定义1个子类继承自QRunnable 2、重写run方法&#xff0c;编写子线程的业务逻辑 3、使用QThreadPool的全局方法来开启这个线程 4、线程的回收不需要关注&#xff0c;由QThreadPool处理 5、缺点&#xff1a;无法使用信号槽机制 6、适合一些不需要和主线程通信的耗时的任…

SpringBoot中大量数据导出方案:使用EasyExcel并行导出多个excel文件并压缩zip后下载

文章目录 前言一、控制器层代码二、服务层代码三、代码亮点分析 前言 SpringBoot的同步excel导出方式中&#xff0c;服务会阻塞直到Excel文件生成完毕&#xff0c;如果导出数据很多时&#xff0c;效率低体验差。有效的方案是将导出数据拆分后利用CompletableFuture&#xff0c;…

集成Spring Security详解

集成Spring Security详解 一、Spring Security简介 Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架&#xff0c;它专注于为Java应用程序提供全面的安全解决方案。作为Spring项目的一部分&#xff0c;Spring Security继承了Spring框架的灵活性和可扩展性…

【图论】(四)最小生成树与拓扑排序

最小生成树与拓扑排序 最小生成树之prim&#xff08;P算法&#xff09;相关概念结题思路拓展 最小生成树之kruska&#xff08;K算法&#xff09;过程模拟程序实现拓展 拓扑排序背景与思路模拟过程程序实现 最小生成树之prim&#xff08;P算法&#xff09; 相关概念 P算法是用…

R语言数据分析案例:电影评分数据的探索性分析

# R语言数据分析案例&#xff1a;电影评分数据的探索性分析 在本案例中&#xff0c;我们将使用R语言对一份电影评分数据集进行探索性分析&#xff0c;主要包括数据清洗、可视化、描述性统计等环节&#xff0c;以了解数据的基本特征和趋势。假设我们使用的是一个电影评分数据集…

『完整代码』坐骑召唤

创建一个按钮 作为召唤/消失坐骑的开关 将预制体放入指定文件夹 命名为Mount01 创建脚本并编写&#xff1a;CallMount.cs using UnityEngine; using UnityEngine.UI; public class CallMount : MonoBehaviour{public Button callBtn;GameObject mountPrefab;GameObject mountIn…

CentOS7 上安装GitLab的经历

一、安装必要的基础环境 1.安装依赖包 [rootgitlab-server ~]#yum install curl policycoreutils openssh-server openssh-clients postfix wget git patch -y [rootgitlab-server ~]# systemctl start postfix 2.配置yum源(由于网络问题&#xff0c;国内用户请使用清华大学…