imagelist und alpha channel

Plattformunabhängige GUIs mit wxWidgets.
tumbili
User
Beiträge: 27
Registriert: Donnerstag 31. Mai 2007, 14:38

imagelist und alpha channel

Beitragvon tumbili » Freitag 22. Juni 2007, 09:56

Hi

Ich habe ein kleines Problem mit meinem TreeCtrl bzw der Imagelist. Kann es sein dass die Imagelist keinen alpha channel unterstützt?

Hier ein kleines Programm zum testen:

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import  wx

class MyFrame(wx.Frame):
   def __init__(self, parent, ID, title):
      wx.Frame.__init__(self, parent, ID, title)

      # TreeCtrl
      tree = wx.TreeCtrl(self, wx.ID_ANY)

      imagelist = wx.ImageList(16, 16, False)
      image = wx.Image("test.png", wx.BITMAP_TYPE_PNG)
      il_image = imagelist.Add(image.ConvertToBitmap())

      tree.AssignImageList(imagelist)
      tree.AddRoot("TEST", il_image)

      # Menubar
      menuBar = wx.MenuBar()
      menu = wx.Menu()

      menu_item = wx.MenuItem(menu, wx.ID_ANY, "Image")
      menu_item.SetBitmap(image.ConvertToBitmap())
      menu.AppendItem(menu_item)

      menu_item = wx.MenuItem(menu, wx.ID_ANY, "Imagelist")
      menu_item.SetBitmap(imagelist.GetBitmap(0))
      menu.AppendItem(menu_item)
      menuBar.Append(menu, "Test")

      # Menubar hinzufügen
      self.SetMenuBar(menuBar)

      self.Center()
      self.Show()

if __name__ == '__main__':
   app = wx.PySimpleApp()
   MyFrame(None, wx.ID_ANY, 'Test')
   app.MainLoop()


Getestet habe ich es mit Python 2.5 und wxPython 2.8.4.0.

Leider wird die Alpha Transparenz nur dargestellt wenn ich das Bild nicht aus der Imagelist lade....

mein verwendetes Testbild könnt ihr hier runterladen (am besten dann noch in test.png umbennenen ;) ):
http://img207.imageshack.us/img207/8416/testan4.png

Also habe ich etwas falsch gemacht oder ist das ein Bug in wxPython/wxWidgets?

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder