使用Ruby Shoes GUI工具包,我将如何在不同的代码区域编辑GUI

使用Ruby Shoes GUI工具包,我将如何在不同的代码区域编辑GUI,ruby,shoes,Ruby,Shoes,我正在编写一个使用鞋子的赛马/赌博游戏,我想知道如何在不同的代码区域更改GUI。当我运行这个程序时,我会在一个应用程序上得到马,然后在另一个应用程序上得到赛道,但我希望它们都在同一个应用程序上。我是否需要将实际的Shoes应用程序本身设置为变量 class Horse def initialize() #puts "YOYOYOYO" #@number=i Shoes.app{ @icon= image 'horsey.jpg' @icon.

我正在编写一个使用鞋子的赛马/赌博游戏,我想知道如何在不同的代码区域更改GUI。当我运行这个程序时,我会在一个应用程序上得到马,然后在另一个应用程序上得到赛道,但我希望它们都在同一个应用程序上。我是否需要将实际的Shoes应用程序本身设置为变量

class Horse 
  def initialize()
    #puts "YOYOYOYO"
    #@number=i
    Shoes.app{
      @icon= image 'horsey.jpg'
      @icon.left = 100
      @icon.top = 50
    }
  end

  def neigh()
    #puts "Neighhhh"
  end

  def raceTime()
    time=rand(100)%20
    return time+10
  end
end

class HorseIcon
  def initialize(h)
    @horse= h
    @imageloc='horsey.jpg'
  end
end

class Game
  def initialize(h1, h2)
    contestants=[h1, h2]
    Shoes.app{
      @icon= image 'raceline.jpg'
      @icon.left = 100
      @icon.top = 70
    }
  end

  def race()
  end
end

game= Game.new(1,2) 
seabiscuit= Horse.new()

您正在使用两个独立的鞋。app类。我想这是你的问题

从您的代码判断,您似乎有其他语言的背景,比如Python。 我建议您克隆Shoes git并查看“Shoes/samples”目录,然后使用它。 或者只是看看

它将帮助您了解代码应该是什么样子

PS:它也会给你一些关于Ruby风格的建议。在使用多行时,通常不会对块使用{}。您可以使用:

    Shoes.app do
      # code goes here
    end