MATLAB App Designer 特别篇:RGB颜色提取器

2024-01-08 13:48

本文主要是介绍MATLAB App Designer 特别篇:RGB颜色提取器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在大家的要求下,我将RGB颜色提取器App化了,并做出了以下几个改进:

保留小数位数标准化
在这里插入图片描述
颜色格式多样化:
支持16进制码及HSV格式
在这里插入图片描述
在这里插入图片描述
数据输出标准化:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
其他的用法可以看之前GUI版本的相关文章:
matlab 图片RGB颜色提取
matlab 图片RGB颜色提取(第二版)

系列文章目录:

  • MATLAB 手把手带你制作第一个APP designer程序(电子词典)
  • MATLAB App Designer入门实战(一)
  • MATLAB App Designer入门实战(二)
  • MATLAB App Designer入门实战(三)
  • MATLAB App Designer 特别篇:RGB颜色提取器

入门实战特别篇——RGB颜色提取器

目录

        • 16.如何去除UIAxes上方边框
        • 17.如何在按按钮时生成属性返回器
        • 18.如何判断单选按钮的选择情况

16.如何去除UIAxes上方边框

使用UIAxes时,即使删除了XLabel,YLabel以及Title,UIAxes上方依旧有为Title预留的空间:
在这里插入图片描述
为此我们可以将Title预留空间调到极小来解决,具体来说可以调整如下两个属性:
在这里插入图片描述
推荐修改下面的TitleFontSizeMulitiplier属性,即title缩放因子,这样就是只调整Title,这俩任意调整一个如下图所示,即可消除Title预留空间:
在这里插入图片描述
在这里插入图片描述

17.如何在按按钮时生成属性返回器

在这里插入图片描述

只需要在回调函数中通过代码的方式生成新的UIFigure及各种控件:在这里插入图片描述
并在按动新UIFigure上按钮时调用局部回调函数,更改全局变量,并且删除新UIFigure即可:
在这里插入图片描述
该部分代码:

			typeSetFig=uifigure(); typeSetFig.Name='settype';typeSetFig.Color=[0.949 0.949 0.949];typeSetFig.Position=[app.getcolorUIFigure.Position(1),...app.getcolorUIFigure.Position(2)+app.getcolorUIFigure.Position(4)-220,...180 190];btgroup=uibuttongroup(typeSetFig);btgroup.Position=[10 50 160 130];btgroup.Title=[];Button1=uiradiobutton(btgroup);Button1.Text='RGB (0-1)';Button1.Position=[10 100 140 20]; Button1.FontName='Cambria';Button1.FontSize=14;Button2=uiradiobutton(btgroup);Button2.Text='RGB (0-255)';Button2.Position=[10 70 140 20];Button2.FontName='Cambria';Button2.FontSize=14;Button3=uiradiobutton(btgroup);Button3.Text='#16:#XXXXXX';Button3.Position=[10 40 140 20];Button3.FontName='Cambria';Button3.FontSize=14;Button4=uiradiobutton(btgroup);Button4.Text='HSV';Button4.Position=[10 10 140 20];Button4.FontName='Cambria';Button4.FontSize=14;switch app.colorClass.typecase 1,Button1.Value=true;case 2,Button2.Value=true;case 3,Button3.Value=true;case 4,Button4.Value=true;endensureBt=uibutton(typeSetFig, 'push');set(ensureBt,'ButtonPushedFcn',@ensure);ensureBt.BackgroundColor=[0.8 0.902 0.902];ensureBt.FontName='宋体';ensureBt.FontSize=18;ensureBt.Position=[10 10 75 30];ensureBt.Text='确定';ensureBt=uibutton(typeSetFig, 'push');set(ensureBt,'ButtonPushedFcn',@cancel);ensureBt.BackgroundColor=[0.8 0.902 0.902];ensureBt.FontName='宋体';ensureBt.FontSize=18;ensureBt.Position=[95 10 75 30];ensureBt.Text='取消';function ensure(~,~)selectedBt=btgroup.SelectedObject.Text;switch selectedBtcase Button1.Text,app.colorClass.type=1;case Button2.Text,app.colorClass.type=2;case Button3.Text,app.colorClass.type=3;case Button4.Text,app.colorClass.type=4;endif ~isempty(app.colorClass.selectedColor)app.TextLabel.Text=app.colorStr(app.colorClass.selectedColor,app.colorClass.type);app.setColor();enddelete(typeSetFig)         endfunction cancel(~,~)delete(typeSetFig) end
18.如何判断单选按钮的选择情况

首先为单选按钮组的按钮设置同一个回调函数,通过按钮组的SelectedObject找到当前选择的按钮并获取其Text属性:
在这里插入图片描述
之后通过选中按钮的文本与各个按钮的文本相比较即可:
在这里插入图片描述


RGB颜色提取器获取方式:
百度网盘链接:https://pan.baidu.com/s/1leb9tj2CWHlDXSFNn9rzUA
提取码:rdac

CSDN下载:MATLAB APP designer RGB颜色提取器

这篇关于MATLAB App Designer 特别篇:RGB颜色提取器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/583653

相关文章

C#实现添加/替换/提取或删除Excel中的图片

《C#实现添加/替换/提取或删除Excel中的图片》在Excel中插入与数据相关的图片,能将关键数据或信息以更直观的方式呈现出来,使文档更加美观,下面我们来看看如何在C#中实现添加/替换/提取或删除E... 在Excandroidel中插入与数据相关的图片,能将关键数据或信息以更直观的方式呈现出来,使文档更

Java后端接口中提取请求头中的Cookie和Token的方法

《Java后端接口中提取请求头中的Cookie和Token的方法》在现代Web开发中,HTTP请求头(Header)是客户端与服务器之间传递信息的重要方式之一,本文将详细介绍如何在Java后端(以Sp... 目录引言1. 背景1.1 什么是 HTTP 请求头?1.2 为什么需要提取请求头?2. 使用 Spr

macOS怎么轻松更换App图标? Mac电脑图标更换指南

《macOS怎么轻松更换App图标?Mac电脑图标更换指南》想要给你的Mac电脑按照自己的喜好来更换App图标?其实非常简单,只需要两步就能搞定,下面我来详细讲解一下... 虽然 MACOS 的个性化定制选项已经「缩水」,不如早期版本那么丰富,www.chinasem.cn但我们仍然可以按照自己的喜好来更换

使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)

《使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)》在现代软件开发中,处理JSON数据是一项非常常见的任务,无论是从API接口获取数据,还是将数据存储为JSON格式,解析... 目录1. 背景介绍1.1 jsON简介1.2 实际案例2. 准备工作2.1 环境搭建2.1.1 添加

React实现原生APP切换效果

《React实现原生APP切换效果》最近需要使用Hybrid的方式开发一个APP,交互和原生APP相似并且需要IM通信,本文给大家介绍了使用React实现原生APP切换效果,文中通过代码示例讲解的非常... 目录背景需求概览技术栈实现步骤根据 react-router-dom 文档配置好路由添加过渡动画使用

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript

matlab读取NC文件(含group)

matlab读取NC文件(含group): NC文件数据结构: 代码: % 打开 NetCDF 文件filename = 'your_file.nc'; % 替换为你的文件名% 使用 netcdf.open 函数打开文件ncid = netcdf.open(filename, 'NC_NOWRITE');% 查看文件中的组% 假设我们想读取名为 "group1" 的组groupName

利用matlab bar函数绘制较为复杂的柱状图,并在图中进行适当标注

示例代码和结果如下:小疑问:如何自动选择合适的坐标位置对柱状图的数值大小进行标注?😂 clear; close all;x = 1:3;aa=[28.6321521955954 26.2453660695847 21.69102348512086.93747104431360 6.25442246899816 3.342835958564245.51365061796319 4.87

C# double[] 和Matlab数组MWArray[]转换

C# double[] 转换成MWArray[], 直接赋值就行             MWNumericArray[] ma = new MWNumericArray[4];             double[] dT = new double[] { 0 };             double[] dT1 = new double[] { 0,2 };

ROS - C++实现RosBag包回放/提取

文章目录 1. 回放原理2. 回放/提取 多个话题3. 回放/提取数据包,并实时发布 1. 回放原理 #include <ros/ros.h>#include <rosbag/bag.h>#include <std_msgs/String.h>int main(int argc, char** argv){// 初始化ROS节点ros::init(argc, argv,