Image 用淡色替换背景图像
我在VB.Net中有一个WinForm,背景中有一些图像,这些图像每5秒由计时器更改一次。问题是它们会立即改变,这看起来不太好。我想添加一些淡入效果,但我得到的错误是不透明度不是tableLayout.backgroundimage的属性。我只能让它褪色,但那不是我想要的 这是我的密码:Image 用淡色替换背景图像,image,vb.net-2010,effects,Image,Vb.net 2010,Effects,我在VB.Net中有一个WinForm,背景中有一些图像,这些图像每5秒由计时器更改一次。问题是它们会立即改变,这看起来不太好。我想添加一些淡入效果,但我得到的错误是不透明度不是tableLayout.backgroundimage的属性。我只能让它褪色,但那不是我想要的 这是我的密码: Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If imageNum > 3 Then
imageNum = 1
End If
Select Case imageNum
Case 1
Me.TableLayoutPanel4.BackgroundImage = Global.posta1.My.Resources.Resources.foto1
For FadeIn = 0.0 To 1.1 Step 0.1
Me.Opacity = FadeIn
Threading.Thread.Sleep(100)
Next
rd_btn1.Checked = False
rd_btn2.Checked = True
Case 2
Me.TableLayoutPanel4.BackgroundImage = Global.posta1.My.Resources.Resources.foto3
rd_btn2.Checked = False
rd_btn3.Checked = True
For FadeIn = 0.0 To 1.1 Step 0.1
Me.Opacity = FadeIn
Threading.Thread.Sleep(100)
Next
Case 3
Me.TableLayoutPanel4.BackgroundImage = Global.posta1.My.Resources.Resources.foto2
For FadeIn = 0.0 To 1.1 Step 0.1
Me.Opacity = FadeIn
Threading.Thread.Sleep(100)
Next
rd_btn3.Checked = False
rd_btn1.Checked = True
End Select
imageNum = imageNum + 1
End Sub
据我所知,不可能设置单个控件的不透明度,也许你可以自己绘制控件,但你必须对此进行研究,因为我自己不知道如何绘制控件 我是个新手,但我认为可以使用控件的paint事件的PaintEventArgs参数进行绘制: 画老照片和新照片 减少旧pic的alpha值,同时增加新pic的alha值,直到它们分别为0.0和1.0 希望这有帮助。对不起,如果没有 )