QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 920|回复: 1

請問GTK+2.0是否能將元件的background當畫布用

[复制链接]
发表于 2006-4-7 11:00:55 | 显示全部楼层 |阅读模式
找了好久才找到GTK的討論區orz

如提,其實真正想做的是透明視窗,我在網路上找到的code可以對window(也適用其他元件)的背景塗上顏色

[code:1]
  GdkColor colory=  { 0, 65535, 65535, 65535 }; /* */
..
..
  GtkStyle* style0 = gtk_widget_get_style(window);
  GtkStyle* style1 = gtk_style_copy(style0);
  memcpy(&style1->bg[GTK_STATE_NORMAL], &colorx, sizeof(GdkColor));  
  memcpy(&style1->bg[GTK_STATE_ACTIVE], &colorx, sizeof(GdkColor));
  memcpy(&style1->bg[GTK_STATE_PRELIGHT], &colorx, sizeof(GdkColor));
  memcpy(&style1->bg[GTK_STATE_SELECTED], &colorx, sizeof(GdkColor));
  memcpy(&style1->bg[GTK_STATE_INSENSITIVE], &colorx, sizeof(GdkColor));
  gtk_widget_set_style(window, style1);

[/code:1]

但是GdkColor 的型態好像沒有可以設alpha的位置,
所以目前的想法是創建一個帶有alpha通道的pixbuf然後 取代or畫到windown的background
不知道這樣的想法是否可行,如果可行的話該怎麼寫??
(我用的GTK是for Framebuffer,所以x11的function應該不能用@_@)

p.s. GTK新手,請各位前輩多指教U_U
发表于 2006-4-10 09:22:29 | 显示全部楼层
不知道,帮顶
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 18:34 , Processed in 0.047276 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表