3

靴でボタンを作成したら、テキストを変更することはできますか?ボタンスタイルの:textキーを変更しようとしましたが、@ button.style.inspectはテキストが変更されたことを確認しますが、ボタンには元のテキストが表示されたままです。

4

3 に答える 3

2

既存のボタンのテキストを変更する方法がわかりません。まだサポートされていないだけだと思います。新しいボタンを作成して、古いボタンを置き換えることができます。残念ながら、少なくとも Windows では、ボタンを削除するとすべてのクリック イベントが台無しになります。他のプラットフォームで試したことはありませんが、うまくいくかもしれません。次のようなことを試してください:

Shoes.app do
  para 'This is some text.'

  @btn = button 'a' do |btn|
    alert 'Hello, World!'
  end

  para 'Blah blah blah'

  button 'Change!' do |btn|
    old = @btn
    new_style = old.style.dup
    txt = new_style[:text].next!
    old.parent.before(old) do
      @btn = button txt, new_style
    end
    old.remove #This messes up the click events on Windows.
  end

end
于 2009-08-10T13:40:40.420 に答える
0

非常に古い質問ですが、解決策があります。あなたはあなたの靴の色について言及しなかったので、私は緑を使います. Green Shoes は GTK2 ベースなので、このように GTK2 オブジェクトを抽出すれば GTK2 のメソッドを利用できます。

require 'green_shoes'

Shoes.app do
  @btn = button('old text ') {|btn|alert('Hello, World!')}
  button('Change!') {|btn|@btn.real.set_label("new")}
end
于 2014-09-14T22:20:21.727 に答える