DNR*_*NRN 6 .net c# compact-framework windows-mobile
我需要在.NETCF中创建一个透明背景的图像,我使用洋红色作为我希望透明的背景.我尝试这样做的方法是覆盖onPaint().但我无法让背景透明化?这就是我所拥有的:
protected override void OnPaint(PaintEventArgs e)
{
Graphics g = e.Graphics;
ImageAttributes imageAttributs = new ImageAttributes();
imageAttributs.SetColorKey(Color.FromArgb(255, 0, 255),
Color.FromArgb(255, 0, 255));
g.DrawImage(cross, crossRect, 200, 10, cross.Width, cross.Height,
GraphicsUnit.Pixel, imageAttributs);
base.OnPaint(e);
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试包含ImageAttributes时,我的图像根本没有被绘制?
啊,CF的透明度.人们可以(并且确实)浪费了这些时间和日子.首先,您可以向我们提供有关您正在使用的图像(位图,png等)的更多信息,但我们可以从您的帖子中推断出一些.我们还需要知道它是否在子容器中(如框架,面板等).
当然支持Colorkey透明度(自2.0以来 - 甚至可能更早).这里的问题是,如果你是一个孩子,你会让父母"流血".这似乎是你正在尝试的,但对我来说并不是很明显,所以我有一些后续问题需要澄清.
我现在的猜测是,ypou在你调用一切的方式上有一些错误,但是我们没有足够的代码来发现它.
这里有一些关于绘画和透明度的资源:
有更多的资源用于alpha通道的东西(这在CF中很简单),但是因为看起来你正在尝试使用colorkey,所以这些应该足够了.
| 归档时间: |
|
| 查看次数: |
6363 次 |
| 最近记录: |