lcsawyer 2016-05-04 03:20 采纳率: 100%
浏览 798
已结题

非计算机专业求大神指导,c#winform trackbar控件改变图片透明度

c#winform 怎样利用trackbar控件反复改变图片的透明度 这是我写的代码:

private void trackBar1_Scroll(object sender, EventArgs e)
{
label1.Text = string.Format("{0}%", trackBar1.Value);
Bitmap bitmap = new Bitmap(@"c.png");
float fl = trackBar1.Value;
ChangePictureAlpha(bitmap, fl / 100);

}
private void ChangePictureAlpha(Bitmap bitmap, float colorAlpha)
{
int iWidth = bitmap.Width;
int iHeight = bitmap.Height;
Graphics g = pictureBox1.CreateGraphics();
float[][] matrixItems ={
new float[] {1,0,0,0,0},
new float[] {0,1,0,0,0},
new float[] {0,0,1,0,0},
new float[] {0,0,0,colorAlpha,0},
new float[] {0,0,0,0,1}};
ColorMatrix colorMatrix = new ColorMatrix(matrixItems);
ImageAttributes imageAtt = new ImageAttributes();
imageAtt.SetColorMatrix(colorMatrix, ColorMatrixFlag.Default, ColorAdjustType.Bitmap);
g.DrawImage(bitmap, new Rectangle(0, 0, iWidth, iHeight), 0.0f, 0.0f, iWidth, iHeight, GraphicsUnit.Pixel, imageAtt);

}
可以部分实现,可是trackbar下滑和上滑都是一样的效果都是透明度增加。

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 #MATLAB仿真#车辆换道路径规划
    • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
    • ¥15 数据可视化Python
    • ¥15 要给毕业设计添加扫码登录的功能!!有偿
    • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
    • ¥15 微信公众号自制会员卡没有收款渠道啊
    • ¥100 Jenkins自动化部署—悬赏100元
    • ¥15 关于#python#的问题:求帮写python代码
    • ¥20 MATLAB画图图形出现上下震荡的线条
    • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘