Любой способ сделать GtkProgressBar прозрачным фоном? - PullRequest
0 голосов
/ 25 апреля 2010

До сих пор я не смог найти какой-либо способ сделать фон GtkProgressBar прозрачным. Я попытался установить прозрачное изображение в качестве фона, но альфа-канал игнорируется. Можно ли это сделать?

Ответы [ 2 ]

0 голосов
/ 28 мая 2010

Вы можете попробовать это, используя файл gtkrc. Попробуйте сделать что-то вроде этого.

`стиль" 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"

0 голосов
/ 25 апреля 2010

Gtk не имеет механизмов для управления прозрачностью.

Это приведет к значительному снижению производительности. Даже изменения в покрытых частях виджетов должны были бы генерировать открытые события. Я предполагаю, что должен быть метод для составления виджетов по-своему. Но я думаю, что было бы много работы для реализации в C / Gtk. В C ++ / gtkmm было бы не так сложно реализовать пользовательский виджет, который выполняет всю визуализацию.

...