したがって、ここでは、ボタンを作成し、ビットマップとテキストを配置してから、イベントハンドラーをフックするという簡単なセットアップを行います。
@scanButton = Wx::Button.new(self, -1, '', @@SCAN_BUTTON_POS, :size => @@SCAN_BUTTON_SIZE)
@scanBitmap = Wx::StaticBitmap.new(@scanButton, -1, bitmap, @@SCAN_BITMAP_POS)
@scanHint = Wx::StaticText.new(@scanButton, -1, 'Scan', @@SCAN_HINT_POS, :style => Wx::ALIGN_CENTER)
ここでのデフォルトの動作は、ボタンがテキストまたはビットマップ上にある場合でも(静的/フォーカス不可であるため)、ボタンの任意の場所をクリックすると、イベントが親(ボタン)に転送されることになると思います。ボタンがクリックされます。
代わりに、静的テキスト/静的ビットマップの境界の外側にあるボタンをクリックすることが、ボタンをクリックする唯一の方法です。ビットマップまたはテキストをクリックしても効果はありません。ビットマップ/テキストから親にイベントを転送しようとしましたが、それも機能しません。誰か提案はありますか?おそらく、私が知らないwxWidgetsのデフォルトの動作がいくつかありますか?