2011-12-27 27 views
0

gtkButtonをgtkImageの上に配置します。私はこれをgtkFixedコンテナの中に入れます。問題は、バックグラウンドに画像があるとき、ボタンのツールチップがもう表示されないことです。画像がなければうまく動作します。ツールチップを表示するにはどうすればよいですか?GTK:gtkButton用のツールチップをgtkImageを背景としてgtkFixedコンテナに表示します。

次のコードは、R-GTK結合様式であるが、それでもアイデア伝える必要がありますので、私はRプログラマー午前:

library(RGtk2) 
w = gtkWindow() 
image = gtkImage(file="tmp_1.png") 
btn = gtkButton("Test") 
gtkWidgetSetTooltipText(btn, "test") 
fx = gtkFixed() 
gtkFixedPut(fx, image, 10, 10) 
gtkFixedPut(fx, btn, 10,10) 
gtkContainerAdd(w, fx) 
gtkWidgetShowAll(w) 

任意のアイデア? TIA。

+0

ボタンに画像を入れたいですか? ['gtk_button_set_image'](http://developer.gnome.org/gtk/2.24/GtkButton.html#gtk-button-set-image)で十分でしょうか?それとも、R-Gtkバインディングに欠けていますか? –

+0

私は、視覚的な情報を含み、定期的に再描画される背景として画像を望みます。画像の上にいくつかのボタン(または他のウィジェット)を配置したいと思います。ボタン自体に画像やアイコンは必要ありません。ツールチップを除いて、これはすべてうまくいきます。 –

+0

コンテナの画像の背景(この場合はGtkFixed)が必要なのかもしれません。そのような場合、[PyGTK FAQのヒント](http://faq.pygtk.org/index.py?req=all#8.21)を見ることができます。必要に応じてバックグラウンドを更新することができ、コンテナの上にあるウィジェットのイベントを妨害すべきではありません。 – gpoo

答えて

1

GtkOverlayウィジェットを使用する必要があります。 GtkImageウィジェットをオーバーレイのメインの子として追加し、ボタンにgtk_overlay_add_overlayを追加します。

これはうまくいくはずです。これがその方法です。

関連する問題