MATLAB 如何创建GUI按钮

MATLAB 如何创建GUI按钮

在MATLAB应用程序环境中,我们可以开发一个GUI(图形用户界面)应用程序,而不需要对编码具备专业知识。因此,MATLAB应用程序构建允许我们创建专业的应用程序,而无需编写代码,只需拖放即可。

在本文中,我们将讨论如何在MATLAB应用程序中创建一个GUI按钮。下面详细解释了在MATLAB应用程序中创建GUI按钮的逐步过程。

在MATLAB应用程序中创建GUI按钮的步骤

我们可以按照以下步骤在MATLAB应用程序中创建一个GUI按钮:

第一步 - 打开MATLAB命令窗口。

第二步 - 启动MATLAB App Designer。

有以下两种方法可以在MATLAB中打开应用程序设计器:

  • 在MATLAB命令窗口中输入’appdesigner’命令,然后按回车键。

  • 在APPS选项卡下点击“设计应用程序”选项。

第三步 - 在App Designer窗口中选择“新建”以创建一个新的应用程序。它将提供一个空白的画布来设计GUI应用程序。

第四步 - 从App Designer窗口左侧显示的工具箱中拖放一个“按钮”。

第五步 - 根据需要自定义按钮。为此,使用App Designer窗口右侧的组件浏览器来更改按钮的属性。

第六步 - 通过为按钮创建回调函数使按钮具有功能。为此,右键单击按钮,然后在上下文菜单中单击“Callbacks”选项。然后,点击“Add ButtonPushedFcn回调”。这将在MATLAB编辑器中打开一个新的命令窗口,以编写按钮的回调函数。

第七步 - 在此函数中编写希望在按钮被点击时执行的MATLAB代码。

第八步 - 最后,通过在App Designer中点击“保存”选项来保存应用程序。

第九步 - 在App Designer中点击“运行”选项来执行应用程序。这个应用程序窗口将包含按钮。

这就是我们如何使用MATLAB应用程序设计器在MATLAB应用程序中创建GUI按钮的方法。

现在,让我们举一个例子,在MATLAB应用程序中创建一个GUI按钮,当点击时将两个数相乘。

在MATLAB应用程序中创建一个用于乘法的GUI按钮

以下是在当点击时在MATLAB应用程序中创建一个GUI按钮来执行两个数相乘的逐步过程:

第一步 – 打开MATLAB并在APPS选项卡中启动MATLAB App Designer。

MATLAB 如何创建GUI按钮

第二步 - 创建一个新的银行应用程序。

MATLAB 如何创建GUI按钮

第三步 - 从组件库中拖放所需组件。在本例中,我们需要以下组件:

  • 三个数字编辑字段:两个用于输入两个数字,一个用于获取乘积。

  • 一个按钮:用于执行乘法。

MATLAB 如何创建GUI按钮

第四步 - 自定义组件,例如为字段和按钮添加所需的标签。

MATLAB 如何创建GUI按钮

第五步 - 将回调函数添加到按钮中。为此,请右键单击按钮,然后单击“回调”,再点击“添加 ButtonPushedFcn 回调函数”。MATLAB编辑器将打开一个新的选项卡以编写代码。

MATLAB 如何创建GUI按钮

第六步 − 编写MATLAB代码,指定按钮的功能。

MATLAB 如何创建GUI按钮

例如,我们将编写以下代码:

% Callbacks that handle component events
    methods (Access = private)

        % Button pushed function: ClicktoMultiplyButton
        function ClicktoMultiplyButtonPushed(app, event)
            % Taking input from num field 1
            A = app.AEditField.Value;
            % Taking input from num field 2
            B = app.BEditField.Value;

            % Calculating Sum
            P = A * B;
            % Displaying Output
            app.PEditField.Value = P;

        end
    end

第七步: − 在应用程序设计中,点击“保存”按钮以保存应用程序。

MATLAB 如何创建GUI按钮

第八步 − 点击“运行”按钮执行应用程序。

MATLAB 如何创建GUI按钮

第九步 − 输入参数,并点击“点击乘法”按钮来执行按钮的功能。

MATLAB 如何创建GUI按钮

这样我们就可以使用MATLAB App Designer在MATLAB应用中轻松创建一个图形用户界面按钮。

MATLAB按钮的代码

以下是上述GUI按钮应用程序的完整MATLAB代码。

示例

classdef product < matlab.apps.AppBase

    % Properties that correspond to app components
    properties (Access = public)
        UIFigure               matlab.ui.Figure
        ClicktoMultiplyButton  matlab.ui.control.Button
        PEditField             matlab.ui.control.NumericEditField
        PEditFieldLabel        matlab.ui.control.Label
        BEditField             matlab.ui.control.NumericEditField
        BEditFieldLabel        matlab.ui.control.Label
        AEditField             matlab.ui.control.NumericEditField
        AEditFieldLabel        matlab.ui.control.Label
    end

    % Callbacks that handle component events
    methods (Access = private)

        % Button pushed function: ClicktoMultiplyButton
        function ClicktoMultiplyButtonPushed(app, event)
            % Taking input from num field 1
            A = app.AEditField.Value;
            % Taking input from num field 2
            B = app.BEditField.Value;

            % Calculating Sum
            P = A * B;
            % Displaying Output
            app.PEditField.Value = P;

        end
    end

    % Component initialization
    methods (Access = private)

        % Create UIFigure and components
        function createComponents(app)

            % Create UIFigure and hide until all components are created
            app.UIFigure = uifigure('Visible', 'off');
            app.UIFigure.Position = [100 100 640 480];
            app.UIFigure.Name = 'MATLAB App';

            % Create AEditFieldLabel
            app.AEditFieldLabel = uilabel(app.UIFigure);
            app.AEditFieldLabel.HorizontalAlignment = 'right';
            app.AEditFieldLabel.Position = [214 384 25 22];
            app.AEditFieldLabel.Text = 'A';

            % Create AEditField
            app.AEditField = uieditfield(app.UIFigure, 'numeric');
            app.AEditField.Position = [254 384 100 22];

            % Create BEditFieldLabel
            app.BEditFieldLabel = uilabel(app.UIFigure);
            app.BEditFieldLabel.HorizontalAlignment = 'right';
            app.BEditFieldLabel.Position = [217 333 25 22];
            app.BEditFieldLabel.Text = 'B';

            % Create BEditField
            app.BEditField = uieditfield(app.UIFigure, 'numeric');
            app.BEditField.Position = [257 333 100 22];

            % Create PEditFieldLabel
            app.PEditFieldLabel = uilabel(app.UIFigure);
            app.PEditFieldLabel.HorizontalAlignment = 'right';
            app.PEditFieldLabel.Position = [217 276 25 22];
            app.PEditFieldLabel.Text = 'P';

            % Create PEditField
            app.PEditField = uieditfield(app.UIFigure, 'numeric');
            app.PEditField.Position = [257 276 100 22];

            % Create ClicktoMultiplyButton
            app.ClicktoMultiplyButton = uibutton(app.UIFigure, 'push');
            app.ClicktoMultiplyButton.ButtonPushedFcn = createCallbackFcn(app, @ClicktoMultiplyButtonPushed, true);
            app.ClicktoMultiplyButton.Position = [257 230 100 22];
            app.ClicktoMultiplyButton.Text = 'Click to Multiply';

            % Show the figure after all components are created
            app.UIFigure.Visible = 'on';
        end
    end

    % App creation and deletion
    methods (Access = public)

        % Construct app
        function app = product

            % Create UIFigure and components
            createComponents(app)

            % Register the app with App Designer
            registerApp(app, app.UIFigure)

            if nargout == 0
                clear app
            end
        end

        % Code that executes before app deletion
        function delete(app)

            % Delete UIFigure when app is deleted
            delete(app.UIFigure)
        end
    end
end

输出

MATLAB 如何创建GUI按钮

结论

因此,这就是关于在MATLAB应用程序中创建GUI按钮的全部内容。在本文中,我们解释了在MATLAB应用程序中创建GUI按钮的步骤。同时,我们通过一个例子详细说明了这个过程,其中我们创建了一个在MATLAB应用程序中用于乘法的按钮。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程