VB.Net Penyelesaian Masalah Transparent Label

Visual Basic .Net ini terdapat masalah kecil yang timbul ketika meletakkan Label pada Form. Ianya kelihatan remeh tetapi memerlukan sedikit 'trick' untuk menyelesaikannya. Masalah tersebut ialah ketika menetapkan fungsi Transparent background pada Label.


Gambarajah diatas menunjukkan BackColor telah ditetapkan sebagai Transparent. Tetapi warna Transparent tidak terjadi pada Label di Form. Ia hanya berlatarbelakang warna putih sahaja. Untuk penyelesaian masalah ini gunakan kod seperti dibawah:

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    '/* for transparent label - bugs from VS */
    Dim xNew, yNew As Single
    Label1.Parent = picBar1
    Label1.BackColor = Color.Transparent
    xNew = Label1.Location.X - picBar1.Location.X
    yNew = Label1.Location.Y - picBar1.Location.Y
    Label1.Location = New System.Drawing.Point(xNew, yNew)
    '/* end of transparent label */
End Sub

Apa yang berlaku ialah dimana Label tersebut menganggap warna latar belakang Form ia sebagai warna bagi latar belakang Label. Jadi kod tersebut akan memastikan Label mengikut warna latar belakang gambar dan bukannya Form. Hasilnya:

Setelah program dilaksanakan, masalah selesai. Label tersebut telah pun menjadi lutsinar (Transparent).


0 comments:

Post a Comment

My Instagram