Swedish flagChinese (Simplified) flagEnglish flagGerman flagFrench flagSpanish flagHindi flag
六月
28
2009
2

MATLAB GUI与guihandles

在Matlab中,我曾与一个计算机程序。 这背后的想法是,它必须是用户友好和高效率的常见的计算做某些类型的设施。 在这个程序中,我已经使用了很多小部件uipanel,uitree和uicontrol。

matlab的GUI教程的许多作家建议使用Matlab的内建函数(或者我应该说是一个工具箱(?))被称为指南。 类型:

指南>>

在命令窗口中,它带来了一个窗口,在这里你可以找到和配置一个数字的组成部分。 这有单速的应用优势。 然而,大的问题,如果你想要写正版软件。 这是因为它是很难保持跟踪你的图形对象。 他们中包括结束出口的数字图

请将您的组件自己

我写我的程序,而无需使用指南。 这是很容易创建和部署组件。 正如你可以看到下面,需要一点点的命令很多的编码。 试想一下,像游戏如何健壮的代码扑克和其他应用那里是一个丰富多彩的活动。 无论如何,不使用指南编写程序。 这是通过设置在数字和窗口的位置创建的窗口句柄。 当然,其他如颜色或回调参数配置就像里面指南。 MATLAB对象一样,我已经写了我的程序,并用调用传递函数的构造组件外包的战略,暂命名为初始化GUI。 内部的结构,持有任何杠杆组件类我救我的对象。 这个结构我开始时,我躺在组件。

  classdef aClassName <手柄
   属性
       handleToGui;
   结束
   方法
      功能OBJ = aClassName(varargin)
          ...
          obj.initGui();
          ...
      结束
       ...
      图功能initGui(OBJ)
          = Obj.handleToGui.fig图(...);
          Obj.handleToGui.otherComponentName = ...
          ...
      结束
   结束
 %结束classdef 

MATLAB函数guihandles

Matlab具有称为guihandles功能。 它在许多方面是相当容易的,我会解释为什么。 原因是,你不必担心直接加入成一个结构组件,当你把他们因为guihandles(母公司),(儿童),图中的所有孩子提供了一个把手的结构。 在此之前,你可以启动后,所有的组件奠定了handleToGui。 这便成为一个领域艾姆斯的标记名称(标签)元件已获得结构。

用Matlab功能guihandles问题

但是,我认为MATLAB有没有想过这是一个风险。 另外,它是让我和其他人所使用的所有过于草率。 事实是,GUI句柄提供的所有部件在图的句柄。 如果你有不同类别,为您的应用程序的不同部分,如 一个单独的类,程序和其他类,做了类似的任务在另一个地方,他们可以摧毁对方,如果两者都使用guihandles的一部分,处理特定类型的plottyta。 在子guihandles允许手柄的主角(包括其他它的子组件)。 如果第二子具有相同的标签名称的任何组件,他们会感到困惑时组件调用它认为是什么组件。

不使用MATLAB函数guihandles的

我是面向对象编程的编程方法,为创造良好的结构。 这是通过允许每个对象(类)内部履行其任务,只有通过特定的接口与环境沟通。 全局变量guihandles提供了一个潜在的致命危险。 世界的概念的目的,换句话说,低耦合,高内聚和明确的模块。

大卫·古斯塔夫松撰写: 编程 |标签:

主题修改竞舞飞扬2.0 - Blogglista.se -翻译是由N2H