MATLAB diseñador novato aplicación avanzada de aprendizaje (a)

A, Apéndice Designer para empezar

1. Abrir

(1) Abrir Inicio Herramienta de diseño de aplicaciones

appdesigner

(2) para abrir un archivo existente de aplicaciones

appdesigner (filename)

nombre del archivo:

  nombre de la aplicación o ruta de archivo, especificado como un escalar cadena de caracteres o vector. Es posible incluir en el nombre del archivo  .mlapp. Sólo se puede pasar un nombre de archivo a la  appdesigner función.

  Si  filename apareces en la ruta de búsqueda de varias carpetas, incluya la ruta de acceso al archivo. La especificación de archivo debe utilizar la ruta completa o la ruta relativa al archivo, o el nombre del archivo en la ruta de MATLAB.

    Ejemplo: appdesigner('app1.mlapp')

    Ejemplo: appdesigner("app1")

    Ejemplo: appdesigner("C:\Documents\Data\watertables.mlapp")

(3) la barra de menú para abrir

  nueva --app

2. Inicio

  Puede crear un nuevo espacio en blanco en la App Inicio, o una nueva función ajusta automáticamente la disposición de dos columna o columnas tienen tres tipos de aplicaciones, se puede:

  • Aplicación para ver una lista de equipos usados ​​recientemente.

  • Explora ejemplos destacados para ayudar a conseguir comenzó.

  • Referencia tutoriales para aprender los conceptos básicos de la aplicación de herramientas de diseño.

  • Aplicación de herramientas de exploración de diseño tutorial se centra en las nuevas características.

 

En segundo lugar, el control

2.1 Componentes comunes

 

2.1.1 El cuadro desplegable

  Además de arrastrar y soltar directa, pero aquí opresión programa para crear y el modo de edición.

(1) genera automáticamente un cuadro desplegable

  El programa crea automáticamente un componente desplegable del proyecto tiene un valor predeterminado.

fig = uifigure; 
dd = uidropdown (fig);

(2) programa para crear una lista desplegable artículos específicos de componentes.

fig = uifigure; 
dd = uidropdown (fig, 'Artículos', { 'Rojo', 'Yellow', 'Blue', 'Verde'}, ... 
                     'Valor', 'Blue');

(3) para crear lista desplegable editable

fig = uifigure; 
dd = uidropdown (fig, 'editable', 'on');

(4) Propiedad

Valor - Valor 
elemento de los artículos | elementos ItemsData

  Valor que especifica  Items o  ItemsData elementos de la matriz. Por defecto, Value es  Items el primer elemento.

  Será  Value designado como  Items un elemento, puede seleccionar los elementos desplegables que coinciden con el elemento. Si  ItemsData no vacía,  Value que está dispuesto a ser  ItemsData un elemento, pero la lista desplegable para seleccionar el elemento asociado en la lista.

Artículos - desplegable 
{ 'Opción 1', 'Opción 2', 'Opción 3', 'Opción 4'} ( por defecto) | Celular carácter vectorial gama | matriz de cadenas | ...

  Desplegable, designado carácter vectorial matriz celular, la matriz de cadenas o clasificación matriz unidimensional. Permitir elementos duplicados. Opciones desplegable pantallas de componentes  Items como muchos como el número de elementos en la matriz. Si especifica esta propiedad como una matriz de clasificación, MATLAB utilizará los valores de la matriz, en lugar de todo el conjunto de categorías.

ItemsData - Los artículos asociados con cada valor de atributo de los datos de elementos de 
matriz vacía ([]) (predeterminado) | 1 × n matriz de valores | 1 × n matriz celular

  Y  Items el elemento de datos asociado con cada valor de atributo, designado como 1 × n 1 × n matriz de valores o una matriz celular. Permitir elementos duplicados.

  Por ejemplo, si se  Items establece el valor en el nombre del empleado, se puede  ItemsData establecer el valor del número de identificación de empleado correspondiente. ItemsData App no es visible para el valor para el usuario.

  Si el  ItemsData valor  Items del número de valores de los elementos de matriz no coinciden, uno de ocurre lo siguiente:

  • Si el  ItemsData valor está en blanco,  Items todos los valores de los elementos se presentan al usuario de la aplicación.

  • Si el  ItemsData número de elementos en el valor es mayor que  Items el valor,  Items todos los valores de los elementos se presentan al usuario de la aplicación. MATLAB ignora los adicionales  ItemsData elementos.

  • Si un  ItemsData valor no nulo, pero menos que el número de elementos de  Items valor, solamente en  ItemsData que tiene los elementos correspondientes en el valor de  Items valores de los elementos se presenta al usuario de la aplicación.

Fuentes y color (ligeramente)
La interactividad

 Visible Propiedad para determinar si el componente desplegable muestra en la pantalla. Si la  Visible propiedad se establece  'off', los componentes desplegables están ocultas, pero aún accesible y se puede especificar sus propiedades. Aplicación para hacer más rápido se inicia, todos los componentes de la necesidad conjunto no estén presentes en el arranque  Visible se establece la propiedad  'off'.

  valor de atributo editable  es  , el usuario no puede cambiar el desplegable conjunto de texto App, incluso valor de atributo editable   es cierto.'on',则下拉组件文本可更改;当Enable 'off''on'

     Habilitar la propiedad

  • Si se establece este valor de la propiedad  'on', la aparición del componente desplegable indicará a los usuarios de la aplicación puede cambiar el desplegable valores de los componentes.

  • Si se establece este valor de la propiedad  'off', la aparición del componente desplegable en gris. Esto indica que el usuario de la aplicación no puede cambiar la apariencia de la lista desplegable valores de los componentes, y desplegable componente no provoca ningún devoluciones de llamada.

  tooltips  工具提示,指定为字符向量、字符向量元胞数组、字符串数组或一维分类数组。如果使用此属性,则在运行时当用户将指针悬停在组件上时,将显示消息。即使禁用组件,工具提示也会显示。要显示多行文本,请指定字符向量元胞数组或字符串数组。数组中的每个元素变为一行文本。如果将此属性指定为分类数组,MATLAB 将使用数组中的值,而不是完整的类别集。

回调属性

Interruptible - 回调中断
'on' (默认) | 'off'

  回调中断,指定为 'on' 或 'off'Interruptible 属性确定是否可以中断运行中回调。

  有以下两种回调状态要考虑:

  • 运行中回调是当前正在执行的回调。

  • 中断回调是试图中断运行中回调的回调。

  每当 MATLAB 调用回调时,回调都会试图中断正在运行的回调(如果存在)。运行中回调所属对象的 Interruptible 属性决定着是否允许中断。Interruptible 属性具有下列两个可能的值:

  • 'on' - 允许其他回调中断对象的回调。中断发生在 MATLAB 处理队列的下一个位置,例如当存在 drawnowfigureuifiguregetframewaitfor 或 pause 命令时。

    • 如果运行中回调包含以上命令之一,则 MATLAB 将在该时刻停止执行回调并执行中断回调。当中断回调完成时,MATLAB 将恢复执行运行中回调。

    • 如果运行中回调不包含以上命令之一,则 MATLAB 执行完当前回调,不会出现任何中断;

  • 'off' - 阻止所有中断尝试。由中断回调所属的对象的 BusyAction 属性决定是放弃该中断回调还是将其放入队列中。

usyAction - 回调排队
'queue' (默认) | 'cancel'

回调排队,指定为 'queue' 或 'cancel'BusyAction 属性决定 MATLAB 如何处理中断回调的执行。有以下两种回调状态要考虑:

  • 运行中回调是当前正在执行的回调。

  • 中断回调是试图中断运行中回调的回调。

无论何时 MATLAB 调用回调,该回调都会试图中断运行中回调。运行中回调所属对象的 Interruptible 属性决定着是否允许中断。如果不允许中断,则中断回调所属对象的属性 BusyAction 将决定是放弃该回调还是将回调放入队列中。以下是 BusyAction 属性的可能值:

  • 'queue' - 将中断回调放入队列中,以便在运行中回调执行完毕后进行处理。

  • 'cancel' - 不执行中断回调。

HandleVisibility - 对象句柄的可见性
'on' (默认) | 'callback' | 'off'

 对象句柄的可见性,指定为 'on''callback' 或 'off'

  此属性控制对象在其父级的子级列表中的可见性。当对象未显示在其父级的子级列表中时,通过搜索对象层次结构或查询属性来获取对象的函数不会返回该对象。这些函数包括 getfindobjclf 和 close。对象即使在不可见时也有效。如果可以访问某个对象,则可以设置和获取其属性,并将其传递给针对对象进行运算的任意函数。

 

 

 

(6)示例

  将以下代码保存到 MATLAB 路径中的 plotOptions.m 中。以下代码将创建一个窗口,其中包含一个绘图和一个下拉组件。当 App 用户更改下拉组件选择时,ValueChangedFcn 回调将改变绘图的颜色。

function plotOptions
fig = uifigure; 
fig.Position(3:4) = [440 320];

ax = uiaxes('Parent',fig,...
    'Position',[10 10 300 300]);

x = linspace(-2*pi,2*pi);
y = sin(x);
p = plot(ax,x,y);
p.Color = 'Blue';

dd = uidropdown(fig,...
    'Position',[320 160 100 22],...
    'Items',{'Red','Yellow','Blue','Green'},...
    'Value','Blue',...
    'ValueChangedFcn',@(dd,event) selection(dd,p));
end

% Create ValueChangedFcn callback:
function selection(dd,p)
val = dd.Value;
p.Color = val;
end

  

  创建一个下拉组件和一个信号灯。当 App 用户从下拉组件中选择选项时,信号灯的大小将改变。

  请将以下代码保存到 MATLAB 路径中的 lampSize.m 中。以下代码将创建一个图窗窗口,其中包含一个下拉组件和一个信号灯。当 App 用户更改下拉组件选项时,ValueChangedFcn 回调将改变信号灯的大小。

function lampSize
% Create figure and components

fig = uifigure('Position',[100 100 300 275]);

lmp = uilamp(fig,...
    'Position',[100 30 20 20]);

dd = uidropdown(fig,...
    'Editable','on',...
    'Position',[84 204 100 20],...
    'Items',{'Size x 1','Size x 2','Size x 3','Size x 4'},...
    'ItemsData',[1 2 3 4],...
    'Value',1,...
    'ValueChangedFcn',@(dd,event) optionSelected(dd,lmp));
end

% Create ValueChangedFcn callback
function optionSelected(dd,lmp)
val = dd.Value;
s = [20 20];
switch val
    case {1, 2, 3, 4}  % User selected a defined option
        size = val * s;
        lmp.Position(3:4) = size;
    otherwise % User typed a value
        m = str2num(val);
        size = m * s;
        lmp.Position(3:4) = size;
end
end

(7)其他

下拉框控件的值 Value返回的是字符串,为了使返回值变为数值型,直接用于数值运算,可以采用语句:

value=str2double(app.XX.value)

  

 

Supongo que te gusta

Origin www.cnblogs.com/Sonny-xby/p/12614903.html
Recomendado
Clasificación