【发布时间】:2012-05-05 12:39:10
【问题描述】:
我目前正在为学校做 matlab 期末项目。我认为自己在编程方面知识渊博且精通。但 Matlab 实在是太奇怪了。
基本问题 (找到答案后才意识到)! 如何在调用 gui 句柄对象时使用变量 没有使用变量的名称而不是值?
换句话说: 在字段名中使用变量(如果我知道它这么简单,我就不会问了)
我的项目正在构建一个古老的“战舰”游戏的简单再现。
我的问题:我目前有 5 个物体(斧头)用于船舶碎片。一次选择一个以将它们移动到另一个位置(网格)。 我可以在按钮点击后使用setpixelposition来移动每个对象。
现在在按钮点击下,我有这样的东西
function btnPlaceShip_Callback(hObject, eventdata, handles)
%Store the current selected ship(passed from an onclick to a label)
ship = get(handles.lblSelectedShip,'string');
%I have tried everything I could think of, but basically I want to achieve the
%following
setpixelposition(handles.ship, [0 250 50 250])
%where the variable 'ship' contains the name of the object.
换句话说,var ship = 'shipAircraftCarrier',并且..
setpixelposition(handles.shipAircraftCarrier, [0 250 50 250])
工作!(设置指定的特定船的位置)。但是,使用变量 ship,matlab 会按字面意思而不是按其值来获取字符串。改用变量会非常方便!
如果有人有任何解决方案,我将不胜感激。我已经在网上搜索过,但也许我对 Matlab GUI 的东西缺乏一些基本的了解 - matlab 帮助文档非常不具描述性,并没有太大帮助。
【问题讨论】:
标签: matlab matlab-guide