0

我有这个鞋子应用程序:

flow :top => 10, :left => 10 do
  flow :width => 0.3 do 
    para @board.deck.card
    click do
      if @board.source_pile
        @board.source_pile = nil
        @deck_border.hide
      else
        @board.source_pile = @board.deck
        @deck_border = border yellow, :strokewidth => 2
      end
    end
  end
end

我只想将边框应用于第二个流程,但由于某种原因,边框出现在整个应用程序周围。我错过了什么?

4

1 回答 1

1

鞋子有棘手的块。简而言之,在块中,self通常是指应用程序。为了解决这个问题,我们必须创建一个变量来保存我们想要边界的流:

flow :top => 10, :left => 10 do
  inner = flow :width => 0.3 do 
    para @board.deck.card
    click do
      if @board.source_pile
        @board.source_pile = nil
        @deck_border.hide
      else
        @board.source_pile = @board.deck
        @deck_border = inner.border yellow, :strokewidth => 2
      end
    end
  end
end
于 2009-07-20T15:06:51.113 回答