任何使GtkProgressBar具有透明背景的方法?

时间:2010-04-25 11:30:36

标签: coding-style colors background transparent gtk

到目前为止,我还没有找到任何办法让GtkProgressBar的背景透明化。我尝试将透明图像设置为背景,但忽略了Alpha通道。可以这样做吗?

2 个答案:

答案 0 :(得分:0)

Gtk没有处理透明度的机制。

这将造成重大的性能损失。即使是小部件的覆盖部分的更改也必须生成公开事件。 我想应该有一种以自己的方式组合小部件的方法。但我认为在C / Gtk中实施这项工作需要做很多工作。在C ++ / gtkmm中,实现自动渲染的自定义窗口小部件并不难。

答案 1 :(得分:0)

您可以使用gtkrc文件进行尝试。 尝试做这样的事情。

`style“tc-theme-ProgressBar” {     xthickness = 1     ythickness = 1

engine "pixmap"
{
    image
    {
        function = BOX
        orientation = HORIZONTAL
        file = "./buttons/TransparentImage.png"
        border = { 0, 0, 0, 0} # = {Left, Right, Top, Bottom} 
        stretch = TRUE #This stretches the image
    }
 }

}

类“GtkProgressBar”样式“tc-theme-ProgressBar”