红宝石鞋:防止打开新窗口

时间:2014-10-14 20:55:03

标签: ruby shoes

所以我有这样一个gui:

Shoes.app title: "MAIN" do
    class MainPanel
        @myApp

        def initialize(myApp)
            @myApp = myApp
        end

        def alert(message)
            @myApp.app do
                alert message
            end
        end

        def add(text)
            @myApp.app do
                append para "lol"
            end
        end
    end

    stack do
        @currPanel = MainPanel.new(self)
        button "start!" do
            @currPanel.alert("balh")
            @currPanel.add("balh")
        end
    end
end

我很困惑,为什么它不起作用。通过说它不起作用我的意思是它总是打开一个新窗口(更新)。因此,每次执行某些操作时,都会生成一个新窗口.... 我不明白我做错了什么。我已经尝试将类声明放在shoes.app之外,但它也没有工作......

1 个答案:

答案 0 :(得分:0)

我相信你想要每次按下按钮时都要保持堆积,并显示警告。如果是这种情况,那么您只需进行一些小改动,事情就会完美无缺:

更改您的添加方法FROM:

def add(text)
    @myApp.app do
        append para "lol"
    end
end

TO:

def add(text)
   @myApp.app do
      append do
        para "lol"
      end
    end
end

如果我没有正确理解你的问题,请告诉我。希望它有所帮助:)