Trang 1 trên 1

Thêm một hiệu ứng của Form

Đã gửi: T.Năm 05/06/2008 9:47 am
gửi bởi clarkkent
Thủ thuật: Một hiệu ứng của Form
Tác giả: Nguyễn Trung Tín sưu tầm
Mô tả: Một hiệu ứng của Form trong VB.NET
Chúc các bạn vui... :D
Cần 1 Button.

Mã: Chọn hết

  1.  
  2.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  3.        Handles Button1.Click
  4.         FadeOut(Me, 0.001)
  5.         FadeIn(Me, 0.001)
  6.     End Sub
  7.  
  8.     Public Sub FadeOut(ByVal FadeForm As Form, Optional ByVal speed As Double = 0.01,Optional ByVal disposeForm As Boolean = False)
  9.         Dim i As Double
  10.         For i = 1 To 0 Step -speed
  11.             FadeForm.Opacity = i
  12.         Next
  13.         If disposeForm = True Then FadeForm.Dispose()
  14.     End Sub
  15.  
  16.     Public Sub FadeIn(ByVal iForm As Form, Optional ByVal speed As Double = 0.01,Optional ByVal disposeForm As Boolean = False, Optional ByVal delay As Double = 0)
  17.         Dim i As Double
  18.         For i = 0 To 1 Step speed
  19.             iForm.Opacity = i
  20.         Next
  21.         If disposeForm = True Then
  22.             iForm.Dispose()
  23.         End If
  24.     End Sub
  25.  

Re: Thêm một hiệu ứng của Form

Đã gửi: T.Sáu 21/11/2008 11:17 pm
gửi bởi kenny88
bạn ơi, tai sao minh ứng dụng code của bạn vào form thì nó ok, nhưng mình muốn sau khí nó đóng lại thì Form2 sẽ hiện ra. thế nhưng sau khi Form2 hiện ra thì cửa sổ của Form1 ko đóng (mà Form1 chỉ ẩn đi thôi), nếu mình muốn Form1 mờ dần rồi đóng lại luôn và form2 mở ra thì mình phải làm thế nào , bạn xem giúp mình được không. Mong bạn đừng cười vì mình chỉ mới tìm hiểu VB.Net thôi.
cám ơn bạn nhiều

Mã: Chọn hết

  1.  
  2. Public Class Formdautien
  3.  
  4.  
  5.     Private Sub FadeOut(ByVal Formdautien As System.Object)
  6.         Dim i As Double
  7.         Dim speed As Double
  8.         speed = 0.001
  9.  
  10.         Me.Show()
  11.  
  12.  
  13.         For i = 0.8 To 0 Step -speed
  14.             Me.Opacity = i
  15.         Next
  16.  
  17.         If Timer1.Interval = 0 Then Me.Close()
  18.  
  19.  
  20.  
  21.  
  22.     End Sub
  23.     Private Sub Formdautien_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  24.  
  25.         FadeOut(Me)
  26.         Dangnhap.Show()
  27.  
  28.  
  29.  
  30.  
  31.     End Sub
  32.  
  33.    
  34. End Class
  35.  

Bạn vui lòng trả lời gấp cho mình nha, vì mình đang cần. Cám ơn bạn nhiều.

Re: Thêm một hiệu ứng của Form

Đã gửi: T.Bảy 22/11/2008 11:41 am
gửi bởi clarkkent
Cái đó tùy vào bạn có chọn Form1 là form chính hay không, nếu form1 là form chính thì ko thể đóng được, chỉ ẩn được thôi.

Re: Thêm một hiệu ứng của Form

Đã gửi: CN 29/08/2010 12:00 pm
gửi bởi solverpvd
Hiệu ứng form này cũng hay hay...(sưu tầm) xem sao. :-S

Re: Thêm một hiệu ứng của Form

Đã gửi: T.Ba 29/03/2011 12:40 am
gửi bởi coldboy_spring
e thử viết lại hiệu ứng fadeout cho đẹp hơn,mọi ng xem rồi cho ý kiến

  1. Imports System.Math
  2. Public Class Form1
  3.     Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  4.         Timer1.Interval = 100
  5.         Timer1.Enabled = False
  6.     End Sub
  7.  
  8.     Private Sub FadeOut(ByVal MyForm As Form, Optional ByVal speed As Double = 0.01)
  9.         If MyForm.Opacity > speed Then
  10.             MyForm.Opacity = Round(MyForm.Opacity - speed, 2)
  11.         Else
  12.             Timer1.Enabled = False
  13.             MyForm.Opacity = 0
  14.         End If
  15.  
  16.     End Sub
  17.     Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
  18.         FadeOut(Me, 0.1)
  19.     End Sub
  20.  
  21.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  22.  
  23.         Timer1.Enabled = True
  24.     End Sub
  25.  
  26. End Class
  27.