我对Ruby/MacRuby相当陌生。我遵循MacRuby网站上的秒表示例,并使用该示例尝试制作一个简单的应用程序,其中需要6个小文本字段,然后在另一个较大的文本字段中显示输入。我发现一对夫妇(虽然含糊不清,很可怕的记录)的例子MacRuby访问/更新文本字段
class AppDelegate
attr_accessor :window
attr_accessor :subjectField, :messageField, :emailTo, :emailFrom, :smtpServerAddress, :smtpPort, :password
attr_writer :subjectField, :messageField, :emailTo, :emailFrom, :smtpServerAddress, :smtpPort, :password
def setMessageField(sender)
@messageField += "SMTP Server Address: #{@smtpServerAddress.to_s}\n")
@messageField += "SMTP Port: #{@smtpPort.to_s}\n")
@messageField += "User Email: #{@emailFrom.to_s}\n")
@messageField += "User Password: #{@password.to_s}\n")
@messageField += "To Email: #{@emailTo.to_s}\n")
@messageField += "Subject: #{@subjectField.to_s}\n")
end
end
显然有什么错在这里,但任何人都可以给我在正确的方向上的暗示?我在这里看到this的帖子,但是我对它的理解不是很清楚。
我收到一个错误,说'setMessageField':nil:NilClass(NoMethodError)'undefined method'stringValue' – pattmorter 2013-03-14 23:23:06
确认setMessageField:中使用的所有实例变量都在某处被分配 - 很可能在Interface Builder中。请参阅秒表示例中的“连接文本输出口”部分。 – jtomschroeder 2013-03-15 01:31:10
我遵循这一点,并连接了所有东西,但它仍然无法正常工作。 – pattmorter 2013-03-15 03:36:42