补充1 MATLAB_GUI_通过普通按钮PushButton的回调函数ButtonDownFcn创建一个长按回调按钮

news2024/12/25 9:54:22

目录

  • 一、实例效果
  • 二、补充的知识点(两种回调函数)
  • 三、步骤
    •   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/913970.html

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

相关文章

回流焊炉温曲线图讲解

从下面回流焊炉温曲线标准图分析回流焊的原理: 当PCB进入升温区(干燥区)时,焊锡膏中的溶剂、气体蒸发掉,同时焊锡膏中的助焊剂润湿焊盘、元器件端头和引脚,焊锡膏软化、塌落、覆盖了焊盘,将焊盘…

vue 项目在编译时,总是出现系统崩的状态,报错信息中有v7 或者 v8 的样式-项目太大内存溢出

vue 项目在编译时,总是出现系统崩的状态,node 命令框也会报错,如下图:有v7 或者 v8 的样式。 原因分析: 分析:遇到与上面图片相似的问题,我们要首先要想到是否是 有关内存的问题,当然…

2023年科技趋势展望报告,这几个领域程序员可以恰饭

太空电梯、MOSS、ChatGPT等,都预兆着2023年注定不会是平凡的一年。那么在2023年,科技领域都有哪些发展趋势呢? 麦肯锡发布了最新的《2023科技趋势展望报告》,从通用人工智能到未来生物工程,总结了备受关注的15种科技趋…

【Unity细节】Unity制作汽车时,为什么汽车会被弹飞?为什么汽车会一直抖动?

👨‍💻个人主页:元宇宙-秩沅 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 秩沅 原创 😶‍🌫️收录于专栏:unity细节和bug 😶‍🌫️优质专栏 ⭐【…

8.注册中心-nacos

1.Nacos 之前有用过spring cloud的eureka注册中心,配置起来稍微繁琐;nacos是阿里开发的一款注册中心,操作就简单多了 1.1 Nacos 下载 Nacos 快速开始这个快速开始手册是帮忙您快速在您的电脑上,下载、安装并使用 Nacos。https:/…

独立站推广方式盘点,轻松赢得流量和收益!

独立站不受平台限制,不用给平台佣金,好是很好,但它的问题在于它完全没有自然流量。想要做独立站,就必须做推广。独立站推广怎么做?看这篇准没错! 01.SEO搜索引擎优化 搜索引擎优化(SEO&#x…

nlp系列(7)三元组识别(Bi-LSTM+CRF)pytorch

模型介绍 在实体识别中:使用了Bert模型,CRF模型 在关系识别中:使用了Bert模型的输出与实体掩码,进行一系列变化,得到关系 Bert模型介绍可以查看这篇文章:nlp系列(2)文本分类&…

摄影预约小程序开发全攻略

当今社会,移动互联网的普及使得手机APP和小程序成为了各行各业的必备工具。在摄影行业,如何让客户更加方便地预约摄影服务,提高工作效率,成为了摄影店主们亟需解决的问题。而定制一款适合自己摄影店的小程序,将成为一种…

【IT运维知识】暴力破解和防暴力破解定义说明

很多刚入行的小伙伴对于暴力破解相关知识不是很了解,今天我们就来简单聊聊。 暴力破解 暴力破解是指采用反复试错的方法并希望最终猜对,以尝试破解密码或用户名或找到隐藏的网页,或者找到用于加密消息的密钥。这是一种较老的攻击方法&#x…

Java免费自学网站墙裂推荐!!!!

最近,常有一些读者问我:“有没有什么推荐的Java学习网站啊?” 因为一直没有时间,所以我之前也是让大家上知乎、搜索引擎搜一下就好了。 但是,我深知不能这样,应该拿出更真诚的态度带来优质的内容。 于是…

TP-Link 智能灯泡缺陷能让黑客窃取用户 WiFi 密码

来自意大利和英国的研究人员在 TP-Link Tapo L530E 智能灯泡和 TP-Link Tapo 应用程序中发现了4个漏洞,攻击者可以利用这些漏洞窃取目标的 WiFi 密码。 TP-Link Tapo L530E 是包括亚马逊在内的多个市场上最畅销的智能灯泡。TP-link Tapo是一款智能设备管理应用程序…

Mybatis动态SQL和模糊查询

一. Mybatis动态SQL 动态 SQL 是 MyBatis 的强大特性之一。在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句。根据不同的条件拼接 SQL 语句是一件极其痛苦的工作。例如,拼接时要确保添加了必要的空格,还要注意去掉列表最后一…

MySQL 8.0 启动和关闭流程

启动流程 mysql 服务端对启动命令进行了层层封装,目的是为了操作简便。同时也提供了原生的启动方式以便应对特殊情况。 建议: systemctl start起来的就使用systemctl stop停。 如果用mysqld stop, systemctl识别不到。 启停方式 systemd ---->/et…

Flink源码之Checkpoint执行流程

Checkpoint完整流程如上图所示: JobMaster的CheckpointCoordinator向所有SourceTask发送RPC触发一次CheckPointSourceTask向下游广播CheckpointBarrierSouceTask完成状态快照后向JobMaster发送快照结果非SouceTask在Barrier对齐后完成状态快照向JobMaster发送快照结…

python 声音录制、保存及播放

参考: https://huggingface.co/suno/bark 1、录制、保存 参考: https://blog.csdn.net/weixin_42357472/article/details/131269539(ffmpeg也可以录制) 下面使用的sounddevice包录制 import scipysampling_rate model.config…

云计算在IT领域的发展和应用

文章目录 云计算的发展历程云计算的核心概念云计算在IT领域的应用1. 基础设施即服务(IaaS):2. 平台即服务(PaaS):3. 软件即服务(SaaS): 云计算的拓展应用结论 &#x1f3…

WPF 项目中 MVVM模式 的简单例子说明

一、概述 MVVM 是 Model view viewModel 的简写。MVVM模式有助于将应用程序的业务和表示逻辑与用户界面清晰分离。 几个概念的说明: model :数据,界面中需要的数据,最好不要加逻辑代码view : 视图就是用户看到的UI结构 xaml 文件viewModel …

百度商业AI 技术创新大赛赛道二:AIGC推理性能优化TOP10之经验分享

朋友们,AIGC性能优化大赛已经结束了,看新闻很多队员已经完成了答辩和领奖环节,我根据内幕人了解到,比赛的最终代码及结果是不会分享出来的,因为办比赛的目的就是吸引最优秀的代码然后给公司节省自己开发的成本&#xf…

DataLoader PyTorch 主要参数的含义

定义: DataLoader类是一个用于从数据集(dataset)中加载数据,并以迭代器(iterator)的形式返回数据样本(data samples)的工具。您给出的两个字典(dictionary)分…

2023河南萌新联赛第(六)场:河南理工大学 C - 旅游

2023河南萌新联赛第(六)场:河南理工大学 C - 旅游 时间限制:C/C 1秒,其他语言2秒 空间限制:C/C 262144K,其他语言524288K Special Judge, 64bit IO Format: %lld 题目描述 小C喜欢旅游&#xf…