将若干个图片(16×16的ICO文件,背景为灰色)加到ImageList控件中
将ImageList 与 Toolbar控件绑定
但Toolbar控件按钮图片背景色(与ImageList绑定)与ToolBar按钮的背景色不一致,
特别是将按钮的Enable 属性设置为false时,按钮的图片部分显示成一个黑方块。
我作过如下测试:
如果将ICO文件的背景设置成透明的,则没有上面的问题。
由于我有200个ICO文件背景都是灰色,如果1个个转换为透明,想想都怕。如果将ImageList控件的TransparentColor设置为灰色,
但不知道该设置那种灰色,灰色值是多少,我随便设置了1个灰色,
运行后,无法解决上面的问题。后来采用运行时去ICO的背景色的办法,如下:
运行时,通过ImageList的Image转换为BitMap ,调用GetPixel(x,y)的方法取指定像素点的颜色,
并将其设置到ImageList控件的TransparentColor属性,运行后,还是无法解决。哪位高手如果有好办法,请贡献下,在此谢谢。

解决方案 »

  1.   

    将toolbar放到panel上,然后将toolbar的Appearance设为Flat,然后给panel加上BackgroundImage,那么他们的底色就一致了。
      

  2.   

    VS2003里的toolbar的颜色问题的确是一个头疼的问题。
    楼主不妨按照上面的方法做一下测试,或许你会眼睛一亮~呵呵
      

  3.   

    借宝地问一个问题在某一个按钮enable=false,的时候,按钮的图标就看不见了,变成灰色的一片,没有图像了
    不知道怎么解决这个问题谢谢
      

  4.   

    "如果将ICO文件的背景设置成透明的,则没有上面的问题。
    由于我有200个ICO文件背景都是灰色,如果1个个转换为透明,想想都怕。"写函数先把文件转换了阿."但不知道该设置那种灰色,灰色值是多少,我随便设置了1个灰色"一个标准的资源文件,背景色都是一样的,用PS打开看看不就知道了阿,一般第一个像数的颜色就是了.我用ImageList都没出过问题的.
      

  5.   

    先用这个吧
    http://home.goofar.com/zkzk123/ImageColorReplace.exe
      

  6.   

    button为disabled变成灰色,无可厚非啊~又不影响你的界面美观。
    因为是disabled,刺眼点也无妨,关键你的正常界面显示要友好美观。