补充1 MATLAB_GUI_修改普通按钮(PushButton)的参数创建一个长按回调按钮

news2024/9/24 13:24:43

目录

  • 一、实例效果
  • 二、补充的知识点(两种回调函数)
  • 三、步骤
    •   1. 先建一个空白的GUI。
    •   2.在GUI Figure 上添加一个按钮(PushButton)组件,并设置其属性,例如位置、大小和文本等。
    •   3.Ctr+S保存一下GUI。
    •   4.如下图所示,右键按钮创建一个回调函数(注:ButtonDownFcn能与鼠标进行交互)。
    •   5.根据需求,在按钮的回调函数ButtonDownFcn中添加代码。
    •   6.执行程序,查看效果

  注:该笔记是为了回答CSDN上的一位网友的评论,然后使用镜像ChatGPT询问得到思路、还有自己不断尝试MATLAB的各种函数从而记录的笔记,笔记来源于本人,属于 本人原创若有错误,欢迎在评论区里指出

一、实例效果

  如下图所示,运行程序后,鼠标刚右击按钮就进行回调,松开就通过一个函数让GUI恢复原样。
在这里插入图片描述

二、补充的知识点(两种回调函数)

  Callback函数:鼠标左击松开后进入函数中执行其中的代码。
  ButtonDownFcn函数:鼠标右击还未松开时进入该函数执行其中的代码。

三、步骤

  1. 先建一个空白的GUI。

在这里插入图片描述

  2.在GUI Figure 上添加一个按钮(PushButton)组件,并设置其属性,例如位置、大小和文本等。

在这里插入图片描述

  3.Ctr+S保存一下GUI。

在这里插入图片描述

  4.如下图所示,右键按钮创建一个回调函数(注:ButtonDownFcn能与鼠标进行交互)。

在这里插入图片描述

  5.根据需求,在按钮的回调函数ButtonDownFcn中添加代码。

在这里插入图片描述

% --- If Enable == 'on', executes on mouse press in 5 pixel border.
% --- Otherwise, executes on mouse press in 5 pixel border or over kj1.
function kj1_ButtonDownFcn(hObject, eventdata, handles)
% hObject    handle to kj1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% ---------------------右击按钮的操作示例-------------------
% 获取按钮的原始颜色
handles.originalColor = get(hObject, 'BackgroundColor');
% 将按钮的颜色更改为红色
set(hObject, 'BackgroundColor', 'red');

% 添加鼠标松开事件的处理函数
set(gcf, 'WindowButtonUpFcn', {@buttonUp, hObject, handles});


% -----------执行松开按钮后的操作的函数---------------
function buttonUp(~, ~, hObject, handles)
% -----------------------定义松开按钮的操作-----------------
% 恢复按钮的原始颜色
set(hObject, 'BackgroundColor', handles.originalColor);
% 移除鼠标松开事件的处理函数
set(gcf, 'WindowButtonUpFcn', '');
% 恢复按钮的原始颜色
set(hObject, 'BackgroundColor', handles.originalColor);

  6.执行程序,查看效果

  如下图所示,运行程序后,鼠标刚右击按钮就进行回调,松开就通过一个函数让GUI恢复原样。
在这里插入图片描述
  本次笔记记录到此结束,谢谢大家支持。

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

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

相关文章

强推9个研究生必备的免费论文下载网站

一、文献党下载器 文献党下载器把庞大的中外文献数据库资源集成在一个平台,就是把大量的中外数据库资源整合在一个站(目前文献资源量名列前茅)。不论是中文还是外文文献,不论是哪种文献类型,不论是哪个学科领域该网站…

<kernel>kernel 6.4 USB-之-hub_port_connect()分析

<kernel>kernel 6.4 USB-之-hub_port_connect()分析 kernel 6.4 USB系列文章如下: <kernel>kernel 6.4 USB-之-hub_event()分析 <kernel>kernel 6.4 USB-之-port_event()分析 <kern…

全球机器传感器市场价值约为142亿美元,预计将以超过7.5%的增长率增长

机器传感器是一类用于检测、测量和感知机器环境中物理量、化学量或其他特定参数的设备。这些传感器将实际的物理现象转化为电信号或数字信号,以便计算机或控制系统进行处理、分析和控制。机器传感器在工业、自动化、物联网、机器人、汽车等领域有广泛应用。 根据阿…

部门来了个新同事,听说是00后,上来一顿操作给我看呆了...

在程序员职场上,什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事,我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事,可遇不可求,向他学习还来不及呢。 真正让人反感的,是技术平平&#x…

OD动态调试exe

之前一直卡,好不容易搞懂一点,记下来记下来 分析exe文件,用ida打开,找到主函数main,分析主函数可以发现,main在判断之后调用了l02等函数 因为判断部分的逻辑还是有点复杂,因此想让他直接打印函…

基于PaddleOCR2.7.0发布WebRest服务测试案例

基于PaddleOCR2.7.0发布WebRest服务测试案例 #WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. #警告:这是一个开发服务器。不要在生产部署中使用它。请改用生产WSGI服务器。 输出结果…

smartsofthelp 5.0 最专业的数据库优化工具,数据库配置优化,数据库高并发优化,SQL 语句优化...

下载地址:百度网盘 请输入提取码 SQL操作返回历史记录: 2023-08-21 20:42:08:220 输入:select version as 版本号 2023-08-21 20:42:08:223 输出:当前数据库实例版本号:Microsoft SQL Server 2012 - 11.0.2100.60 (X64) …

司徒理财:黄金美盘继续看跌,黄金原油最新走势分析及操作建议

黄金走势分析及策略      黄金上周继续回落收跌,周线连续第四周走低,而且还破了周的低点1892,空头力量仍占据优势,暗示后市仍有继续走低的动力和空间,日线方面,黄金一直是承压5日均线下行,是…

@Slf4j报错:Not generating field log: A field with same name already exists

错误出处: 错误原因: 同时使用了Slf4j注解以及LittlecLogger private static final LittlecLogger log LittlecLoggerFactory.getLogger(TimeTrackController.class); 修复方法: 将log改为LOG,便于区分,代码即用到了…

服务运营|斯坦福大学商学院Yue Hu :基于排队论的医院急诊部人员配置策略

作者:李舒湉, 陈盈鑫, XinW 编者按 本次解读的文章是“Prediction-Driven Surge Planning with Application in the Emergency Department”。论文第一作者是斯坦福大学商学院(Stanford Graduate School of Business) 的Yue Hu&a…

浅谈煤矿井下电力监控系统的应用研究

贾丽丽 安科瑞电气股份有限公司 上海嘉定 201801 摘要:主要介绍了应用煤矿井下电力监控系统的重要意义,并对煤矿井下电力监控系统的主要原理和基本构成做了简要介绍,并从隔爆监控单元设计、通信协议设计和组态监控系统设计等方面提出了电力监…

小白到运维工程师自学之路 第七十八集 (安装Jenkins)

一、环境概述 随着软件开发需求及复杂度的不断提高,团队开发成员之间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题。Jenkins自动化部署可以解决集成、测试、部署等重复性的工作,工具集成的效率明显高于人工操作&#xf…

【考研数学】解决求解微分方程时,常数的结合问题以及是否能直接去掉绝对值的讨论

文章目录 引言例子 1例子 2总结 引言 在微分方程,尤其是一阶线性微分方程的求解过程中,经常出现求 ∫ 1 x d x \int\frac{1}{x}dx ∫x1​dx 等原函数需要加绝对值的不定积分。如果放在不定积分里,肯定毫不犹豫会加上绝对值,也就…

OpenCV 中的色彩空间 (C++ / Python)

在本教程中,我们将了解计算机视觉中使用的流行色彩空间,并将其用于基于颜色的分割。我们还将分享 C++ 和 Python 的演示代码。

在Flutter应用内部实现分屏功能

前言 这一次被要求实现屏幕上同时展示两个页面,并且两个页面的逻辑,功能互不影响,通俗一点讲就是在Flutter内部实现一个类似于分屏的功能,这可难不倒我。 方法 要在 Flutter 中实现一个屏幕的上半部分和下半部分展示不同的页面…

【C++】C 语言 和 C++ 语言中 const 关键字分析 ② ( const 常量分配内存时机 | const 常量在编译阶段分配内存 )

文章目录 一、const 常量内存分配时机二、使用如下代码验证 const 常量内存分配时机三、分析验证结果 - const 常量在编译阶段分配内存 一、const 常量内存分配时机 在上一篇博客中 , 讲到了获取 const 常量的地址 , 代码如下 : // 定义常量// 该常量定义在了 符号表 中// 符号…

通过cpolar在外远程查看家里内网监控

通过cpolar在外远程查看家里内网监控 文章目录 通过cpolar在外远程查看家里内网监控前言1. 在cpolar官网预留一个空白隧道2. 完成空白数据隧道,生成地址3. 设置空白隧道的出口4. 空白数据隧道的出口设置5. 获取公网地址6. 打开本地电脑“远程桌面”7. 打开Windows自…

赶紧看看!这才是对制造业最大的优化

​随着全球商业环境的不断变化,资产管理系统在帮助企业实现精细化管理、提高效率和降低风险方面发挥着关键作用。 在这个数字化时代,资产管理系统不仅是一种管理工具,更是推动企业创新和增长的关键因素之一。通过充分利用这些系统&#xff0c…

【前端vue升级】vue2+js+elementUI升级为vue3+ts+elementUI plus

一、工具的选择 近期想将vuejselementUI的项目升级为vue3tselementUI plus,以获得更好的开发体验,并且vue3也显著提高了性能,所以在此记录一下升级的过程对于一个正在使用的项目手工替换肯定不是个可实现的解决方案,更优方案是基于…

提升研发效能的开发工具

一、前言 随着企业对创新和效率的追求不断升级,研发效能成为了炙手可热的概念。各大公司纷纷成立专门的团队,以提升研发效能为重要目标。本文将从研发人员的视角出发,结合自身的深度思考,探讨研发效能的相关概念,共同寻…