Matlab(GUI程式设计)

目录

1.MatlabGUI

 1.1 坐标区+普通按钮

 1.1.1 对齐组件

 1.1.2 按钮属性

1.1.3 脚本说明

 1.1.4 选择呈现

 1.3 编译GUI程序


在以前的时候,我们的电脑还是这样的

 随着科技的不断进步,我们的电脑也发生着翻天覆地的改变1990s:

在未来,我们的电脑可能是这样的:

 今天我们来学习的Matlab的图形化界面的使用!!!

1.MatlabGUI

guide%图形化界面

 然后我们就来到我们图形化界面

按钮(Push Button)按下按钮时会产生一个动作
滑块(Slider)通过允许用户移动滑动条,滑块接收指定范围内的数字输入
单选按钮(Radio Button)单选按钮与复选框类似,但在一组相关单选按钮中,单选按钮通常是互斥的
复选框(Check Box)复选框在选中时可以产生操作,并指示其状态为选中或未选中
编辑文本(Edit Text)编辑文本组件是允许用户输入或修改文本字符串的字段,当需要文本作为输入时,请使用编辑文本
静态文本(Static Text)静态文本组件显示本文本行
弹出菜单(Pop-Up Menu)弹出菜单打开,当用户单击箭头时显示一个选项列表
列表框(List Box)列表框显示项目列表,并允许用户选择一个或者多个项目
切换按钮(Toggle Button)切换按钮生成一个操作,并指示它们是打开还是关闭
桌子(Table)使用表格按钮创建表格组件
轴(Axes)可以显示图形

 1.1 坐标区+普通按钮

 1.1.1 对齐组件

 看到右边的我们的小按钮的位置不太美观,我们应该怎么做才可以将它们的位置进行改变呢?

 结果:

 1.1.2 按钮属性

一个Object总会有一个唯一的id,我们在属性中可以找到

我们可以通过修改属性值,达到我们预期的效果:

1.1.3 脚本说明

每个按钮对应一个脚本,如果想给对应按钮加事件,就必须要在对应的脚本函数中编写代码

 我们现在主页面中添加代码,看看会发生什么情况?

handles.peaks=peaks(35);
handles.membrane=membrane;
[x,y] = meshgrid(-8:.5:8);
r = sqrt(x.^2+y.^2) + eps;
sinc = sin(r)./r;
handles.sinc = sinc;
handles.current_data = handles.peaks;
surf(handles.current_data)

       我们将脚本保存之后,我们的GUI界面就会发生改变,但是我们的预期是当我们点击button1按钮后,这个图片才被允许出现,这不符合我们的预期

 

 我们再次点击button1按钮看是不是和我们预期的一样

 1.1.4 选择呈现

 我们想在新增加的图像中显示,我们首先找到

 在我们button1按钮的脚本中修改代码,指定呈现的Object

surf(handles.axes2,handles.current_data)
%或者是
axes(handles.axes2);
surf(handles.current_data);

 1.2 滑动条+静态文本

 拉的时候,上面的文本框并没有发生改变,因为我们还没有将两个Object的关联起来

a = get(handles.slider2, 'Value');
set(handles.text2, 'String', 'TEST');

 1.3 编译GUI程序

       在我们电脑中可以运行对应的程序,但是换个电脑,这些程序未必可以运行的起来,所以这就是我们通过将其进行编译

deploytool

 等待即可

 

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

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

相关文章

Mac 多版本jdk安装与切换

macOS上可以安装多个版本的jdk,方法如下: 1.下载jdk 在Oracle官网上下载不同版本的jdk: https://www.oracle.com/java/technologies/downloads/#java17 方案一 1.查看本机所有的jdk /usr/libexec/java_home -V3. 配置环境变量 打开bash_…

从零开发JavaWeb入门项目--十天掌握

原文网址:从零开发JavaWeb入门项目--十天掌握_IT利刃出鞘的博客-CSDN博客 简介 这是一个靠谱的JavaWeb入门项目实战,名字叫蚂蚁爱购。从零开发项目,视频加文档,十天就能学会开发JavaWeb项目,教程路线是:搭…

CSS使两个不同的div居中对齐的三种解决方案

在CSS中,有多种方法可以让两个不同的div居中对齐,包括相对定位和绝对定位。以下是两种常见的方法: 方法一:使用Flexbox Flexbox是一个用于创建灵活布局的CSS3模块。使用Flexbox,可以很容易地对元素进行居中对齐。 H…

wireshark 流量抓包例题

一、题目一(1.pcap) 题目要求: 1.黑客攻击的第一个受害主机的网卡IP地址 2.黑客对URL的哪一个参数实施了SQL注入 3.第一个受害主机网站数据库的表前缀(加上下划线例如abc) 4.第一个受害主机网站数据库的名字 看到题目SQL注入&#xff0c…

使用VisualStudio制作上位机(六)

文章目录 使用VisualStudio制作上位机(六)第五部分:应用程序打包第一步:勾选为Release模式第二步:生成解决方案第三步:将我们额外添加的文件放入到Release这个文件夹里 使用VisualStudio制作上位机&#xf…

Vulnhub内网渗透DC-7靶场通关

个人博客: xzajyjs.cn DC系列共9个靶场,本次来试玩一下一个 DC-7,下载地址。 下载下来后是 .ova 格式,建议使用vitualbox进行搭建,vmware可能存在兼容性问题。靶场推荐使用NAT(共享)模式,桥接模式可能会造成目标过多不…

Dolphin for Mac(Wii游戏模拟器)配置指南

Wii模拟器Dolphin Mac是款适合Mac电脑中的游戏玩家们使用的模拟器工具。Wii模拟器Dolphin Mac官方版支持直接运行游戏镜像文件,玩家可以将游戏ISO拷贝到某一个文件夹中统一进行管理。Wii模拟器Dolphin Mac除了键盘和鼠标外,还支持配合原版的Wii遥控器操作…

Docker从认识到实践再到底层原理(二-3)|LXC容器

前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏…

RISC-V(2)——特权级及特权指令集

目录 1. 特权级 2. 控制和状态寄存器(CSR) 2.1 分类 2.2 分析 1. 特权级 一个 RISC-V 硬件线程(hart)是运行在某个特权级上的,这个特权级被编码到一个或者多个 CSR(control and status register&a…

研华I/O板卡 Win10+Qt+Cmake 开发环境搭建

文章目录 一.研华I/O板卡 Win10QtCmake 开发环境搭建 一.研华I/O板卡 Win10QtCmake 开发环境搭建 参考这个链接安装研华I/O板卡驱动程序系统环境变量添加研华板卡dll Qt新建一个c项目 cmakeList.txt中添加研华库文件 cmake_minimum_required(VERSION 3.5)project(advantechDA…

Unity 之 方括号[ ] 的用法以及作用

文章目录 在Unity中,方括号 [ ] 通常用于表示属性、特性(Attributes)或者元数据(Metadata)。这些标记提供了附加信息,可以用于修改类、方法、字段等的行为或者在编辑器中进行设置。 以下是一些常见的用法&…

【Sprig AOP】

目录 🥗1 AOP 的思想 🍚2 AOP 的组成 🥚2.1 切面 🍙3 AOP 的实现 🍤3.1 添加 Spring AOP 依赖 🥫3.2 定义切面 🍣3.3 定义切点 🍳3.4 实现通知 🍔4 AOP 实现的一个例子 1…

ui网页设计实训心得

ui网页设计实训心得篇一 通过这次实训对这门课程的学习,做好网页,并不是一件容易的事,它包括网页的选题、 内容采集整理、 图片的处理、 页面的排版设置、 背景及其整套网页的色调等很多东西。 所以我得出一下总结: 一、 准备资…

Linux上git的简单使用

git的作用:版本控制多人协作 客户端 磁盘上的文件-->本地仓库-->远端仓库 服务端 gitee和GitHub是基于git的商业化网站 git的命令行如何使用? 1、新建一个仓库 .git ignore 是忽略带有某些后缀的文件的上传。 例如:里面有 .sln …

输出归一化位置式PID(完整梯形图代码)

SMART PLC单自由度和双自由度位置式PID的完整源代码,请参看下面文章链接: 位置式PID(S7-200SMART 单自由度、双自由度梯形图源代码)_RXXW_Dor的博客-CSDN博客有关位置型PID和增量型PID的更多详细介绍请参看PID专栏的相关文章,链接如下:SMART PLC增量型PID算法和梯形图代码…

【深入浅出设计模式--状态模式】

深入浅出设计模式--状态模式 一、背景二、问题三、解决方案四、 适用场景总结五、后记 一、背景 状态模式是一种行为设计模式,让你能在一个对象的内部状态变化时改变其行为,使其看上去就像改变了自身所属的类一样。其与有限状态机的概念紧密相关&#x…

41、springboot 整合 FreeMarker 模版技术

springboot 整合 FreeMarker 模版技术 ★ 整合FreeMarker的自动配置: FreeMarkerAutoConfiguration:负责整合Spring容器和获取FreeMarkerProperties加载的配置信息。FreeMarkerServletWebConfiguration/FreeMarkerReactiveWebConfiguration&#xff1a…

【Java核心知识】ThreadLocal相关知识

ThreadLocal 什么是ThreadLocal ThreadLoacal类可以为每个线程保存一份独有的变量,该变量对于每个线程都是独占的。实现原理为每个Thread类中包含一个ThreadHashMap,key为变量的name,value为变量的值。 在日常使用中,我们可以通…

数据结构——树

树 树的概念: 图1 图2 图1中是我们现实生活中的树,根在下,叶子和分支在上,而在计算机中的树是图二中的样子,也就是现实生活中的树倒过来的样子&…

Vue学习笔记一(2019)

1.Vuex Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。 每一个 Vuex 应用的核心就是 store(仓库)。“store”基本上就是一个容器,它包含着你的应用…