怎么样用Matlab设计一个界面,把界面与M文件程序连接起来?

如题所述

可以用GUI编辑器,按下图数字标号进行:

1、点击打开GUI编辑框

2、随便拉一个控件到编辑框内

3、双击这个控件打开其属性框,找“ButtonDownFcn”点击其后的编辑按钮

4、系统会弹出对话框问是选取M还是自动生成,这里点自动生成,在文件模板中对应位置输入“a=1”并保存

5、点击绿箭头运行

6、单击复选框

7、输出结果

注:这里只是给你一个简单的示例,具体的操作可以看MATLAB的帮助文件,搜索GUI,里面有大量的实例。

追问

谢谢你,这是我第一次做,没遇到“系统会弹出对话框问是选取M还是自动生成”,而且输出结果在Command Window中,请问要怎样操作才能将结果显示在界面上?我现在有M文件源代码能运算出结果的,包括function,它们应该别放到文件模板的哪部分?貌似function直接放进去就出错(因为这样就有两个function了)。要怎样连接起来呢?希望能详细说明,不胜感激!

追答

你的function要实现什么功能?希望的GUI效果又是怎样的?能具体描述一下吗?如果方便的话M文件可以发给我,我试着搞搞。

追问

function是Warshall-Floyd算法求最短路径(用matlab实现的)。希望的GUI效果就是一个查询按钮,点击查询直接输出最短路径就可以了。

追答

Warshall-Floyd算法神马的实在不懂呃……我做了一个输入输出的GUI给你参考吧:

1:、选好控件,双击打开按键控件

2、找“ButtonDownFcn”点击其后的编辑按钮

3、在该函数下添加如下代码:

    a=str2double(get(handles.edit,'String'));%获取句柄为edit的值,(句柄名称和控件属性框里的tag名称一致)

    b=str2double(get(handles.edit1,'String'));%获取句柄为edit1的值

    c=a+b

    set(handles.edit2,'String',c)%设置句柄为edit2的控件值

4、点击箭头运行

5、a=1,b=2

6、点按键

 

你可以参考,把算法放中间,最后通过句柄操作显示出来就好。

 

追问

你的答案非常详细!非常感谢!

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答