据我所知,如果我只想在控制台中“放置”,那么我就不必问这个问题了。(然而,最后我还是亲自在 StackOverflow 上向大家提问,尽管我已经访问了多年。)
这是我的问题:
- 我正在尝试创建一个变量,该变量将在用户单击时“设置”为特定值
- 然后我试图在更改后显示该值
- 我可以设置值,但它不会显示
(当然,如果我不使用鞋子,这应该可以工作。)
这是我的代码的相关部分:
class Inits
# Declares all global vars used
def init1
...
end
def initattrib
@id = "###"
@name = "name undef"
alert("Alert: default attrib set")
end
def id
@id
#alert("Alert: id call")
end
def name
@name
#alert("Alert: name call")
end
def id=(newid)
@id = newid
#alert("Alert: id set")
end
def name=(newname)
@name = newname
#alert("Alert: name set")
end
end
然后我试图调用 id 并将其设置为:
Shoes.app :width => 800, :height => 600, :resizable => false do
currclass = Inits.new
currclass.init1
currclass.initattrib
.
.
.
id = "123"
name = "new name"
# I declare something to click here
click { currclass.id = id, currclass.name = name }
# Then I try to display it as so:
para currclass.id
para currclass.name
# But of course the value is not displayed -- just the default value
end
...顺便说一句,我很确定我应该使用实例变量而不是类变量(@x,而不是@@x)。
有什么方法可以“更新变化”(“时钟上升沿”是一个很好的类比)或其他方式来调用它?
无论如何,提前感谢您对我做得不对的任何建议。或许有误会。