
正文
vb.net筛选颜色 vba筛选变量
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
VB.NET:绘图后,如何才能取得所绘图形的颜色值?
加入一个TextBox控件,一个Command控件
代码:
Private Declare Function GetPixel Lib "gdi32" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long) As Long
Private Declare Function GetWindowDC Lib "user32" (ByVal hWnd As Long) As Long
Private Sub Command1_Click()
Dim Color As Long
WindowDC = GetWindowDC(0) '获取屏幕的设备场景
Color = GetPixel(WindowDC, 500, 100) '获指定点的颜色
'分解RGB颜色值
R = (Color Mod 256) '红色
b = (Int(Color \ 65536)) '蓝色
G = ((Color - (b * 65536) - R) \ 256) '绿色
Text1.BackColor = RGB(R, G, b)
End Sub
相关问答
Q1: vb.net拾色器设计,要求:能获取图片任意位置的颜色
VB可使用Point方法来获取图片指定点的颜色。
Point 方法
按照长整数,返回在 Form 或 PictureBox 上所指定磅的红-绿-蓝 (RGB) 颜色。
语法
object.Point(x, y)
'窗体判色代码:
Private Sub Form1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Text1 = X
Text2 = Y
Text3 = Point(X, Y)
Text4 = (Val(Text3) Mod 65536) Mod 256 'Red
Text5 = (Val(Text3) Mod 65536) \ 256 'Green
Text6 = Val(Text3) \ 65536 'Blue
Shape1.FillColor = RGB(Val(Text4), Val(Text5), Val(Text6))
End Sub
'PictureBox判色代码:
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Text1 = X
Text2 = Y
Text3 = Picture1.Point(X, Y)
Text4 = (Val(Text3) Mod 65536) Mod 256 'Red
Text5 = (Val(Text3) Mod 65536) \ 256 'Green
Text6 = Val(Text3) \ 65536 'Blue
Shape1.FillColor = RGB(Val(Text4), Val(Text5), Val(Text6))
End Sub
Q2: vb.net 随机颜色 可追加分数!!!
Dim c As Color '新生成的颜色
Dim r As Byte 'RED
Dim g As Byte 'Green
Dim b As Byte 'Blue
Dim a As Byte 'Alpha 分量值
a = Button1.BackColor.A
r = Button1.BackColor.R
g = Button1.BackColor.G
b = Button1.BackColor.B
Dim rnd As New Random '生成随机数
Dim i As Integer
i = rnd.Next(-10, 10)
r = r + IIf(r + i 255, -i, i)
i = rnd.Next(-10, 10)
g = g + IIf(g + i 255, -i, i)
i = rnd.Next(-10, 10)
b = b + IIf(b + i 255, -i, i)
c = Color.FromArgb(a, r, g, b)
Q3: vb.net 对固定坐标取色
Using b As New Bitmap(1, 1)
Using g As Graphics = Graphics.FromImage(b)
g.CopyFromScreen(New Point(300, 300), New Point, New Size(1, 1))
PictureBox1.BackColor = b.GetPixel(0, 0)
End Using
End Using
复制当前屏幕左上角位置(300,300)的一个点,取其颜色
关于vb.net筛选颜色和vba筛选变量的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






