[Armadillo:05958] Re: 500FX のGTK小技メモ

MasakiAoyama email@hidden
2010年 10月 21日 (木) 09:44:54 JST


青山です。

> > マウスカーソル(マウスポインタ)を透明にします。
> > 
> > gchar bits[32] = { 0};
> > GdkBitmap *bitmap;
> > GdkColor color = {0, 0, 0, 0};
> > GdkCursor *cursor; 
> > 
> > ※gtk_widget_show_all(window)の後あたり
> 
> # window == top level window ですよね?
> window->window が生成されないと gdk_window_*() が呼べないので
> この点重要です。

そのとおりです。

> > bitmap = gdk_bitmap_create_from_data( NULL, bits, 16, 16);
> > cursor = gdk_cursor_new_from_pixmap( bitmap, bitmap, &color, &color, 8, 8);
> > gdk_window_set_cursor( fixed->window, cursor); 
> > 
> > ※gdk_window_set_cursorで、gdk_window_set_cursor( window, cursor) とすると
> >  実行時エラーになったので、windowの上に全面配置しているfixed->windowを指定
> >  しています。
> 
> gdk_window_set_cursor(window->window, cursor); とできませんか?

window->window でできました。
ここいらへんはよくわかってないまま使っています。

> # gdk_cursor_new_from_pixmap() も Gtk+ 3.0では使えないので
> # cairo への移行が必要です。
> # http://library.gnome.org/devel/gtk/unstable/ch25s02.html#id1132461

なるほど、こういう補足情報を書き残しておくのも重要ですね。
調べて見つけたやり方を真似てみたができなかった。とかありがちですしね。

以上




armadillo メーリングリストの案内