所以是的,我做了一个带有RGB滑块的表格,它生成了一种颜色,而当我关闭这个表格时,我的r,g,b变量(整数)被发送到我的另一个用来改变所选按钮的颜色这是我到目前为止所得到的...(一些代码是法语rouge = red,vert = green和bleu = blue,因为lbl代表标签,tb代表轨道栏)
Public Property r As Integer
Public Property g As Integer
Public Property b As Integer
Private Sub tbrouge_Scroll(sender As Object, e As EventArgs) Handles tbrouge.Scroll
lblrouge.Text = tbrouge.Value
prgb.BackColor = Color.FromArgb(tbrouge.Value, tbvert.Value, tbbleu.Value)
End Sub
Private Sub tbvert_Scroll(sender As Object, e As EventArgs) Handles tbvert.Scroll
lblvert.Text = tbvert.Value
prgb.BackColor = Color.FromArgb(tbrouge.Value, tbvert.Value, tbbleu.Value)
End Sub
Private Sub tbbleu_Scroll(sender As Object, e As EventArgs) Handles tbbleu.Scroll
lblbleu.Text = tbbleu.Value
prgb.BackColor = Color.FromArgb(tbrouge.Value, tbvert.Value, tbbleu.Value)
End Sub
Private Sub btn_ok_Click(sender As Object, e As EventArgs) Handles btn_ok.Click
r = tbrouge.Value
g = tbvert.Value
b = tbbleu.Value
Me.Close()
End Sub
答案 0 :(得分:0)
使用自定义事件。
Public Class frmColorChange
Public Property r As Integer
Public Property g As Integer
Public Property b As Integer
Public Event ColorChanged(r As Double, g As Double, b As Double)
Private Sub tbrouge_Scroll(sender As Object, e As EventArgs) Handles tbrouge.Scroll
lblrouge.Text = tbrouge.Value
prgb.BackColor = Color.FromArgb(tbrouge.Value, tbvert.Value, tbbleu.Value)
End Sub
Private Sub tbvert_Scroll(sender As Object, e As EventArgs) Handles tbvert.Scroll
lblvert.Text = tbvert.Value
prgb.BackColor = Color.FromArgb(tbrouge.Value, tbvert.Value, tbbleu.Value)
End Sub
Private Sub tbbleu_Scroll(sender As Object, e As EventArgs) Handles tbbleu.Scroll
lblbleu.Text = tbbleu.Value
prgb.BackColor = Color.FromArgb(tbrouge.Value, tbvert.Value, tbbleu.Value)
End Sub
Private Sub btn_ok_Click(sender As Object, e As EventArgs) Handles btn_ok.Click
r = tbrouge.Value
g = tbvert.Value
b = tbbleu.Value
'raise the event
RaiseEvent ColorChanged(r, g, b)
Me.Close()
End Sub
End Class
用法:
'on the calling form
Dim frm As New frmColorChanged
Addhandler frm.ColorChanged, AddressOf ColorChanged
frm.ShowDialog()
'event handler
Private Sub ColorChanged(r As Double, g As Double, b As Double)
'use the variables to set the new color
End Sub