• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Căn bản màu trong VB6

Các bài viết hướng dẫn, giúp các bạn hiểu và tiếp cận với Visual Basic nhanh hơn
Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4762
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 515 time

Căn bản màu trong VB6

Gửi bàigửi bởi truongphu » T.Sáu 19/06/2009 10:34 am

Tên bài viết: Căn bản màu trong VB6
Tác giả: truongphu
Cấp độ bài viết: Căn bản
Tóm tắt: Cho đến nay Forum chưa có bài viết nào nói về màu sắc, cứ mặc định tham gia Forum là đã biết!
Ngoài ra cách trộn các màu cũng chưa được rõ ràng



Màu sắc trong VB6

A- Căn bản màu trong VB6
Vb6 quy định màu sắc dựa trên 3 màu đơn sắc chính: Đỏ (Red), Lục (Green) và Lam (hay xanh đậm Blue)
Mỗi màu sắc được biểu thị bằng một số Long từ 0 đến 16777215 dựa trên hàm RGB([0-255], [0-255], [0-255]);
nghĩa là với hệ RGB ta có 16777216 màu tổng hợp.
(= 255*256*256 + 255*256 + 255)

Các số Long về màu sắc (nhắc lại số Long đến 2147483647 nhưng màu chỉ đến 16777215) có thể được viết dưới 2 dạng:
dạng hệ đếm 10 hay dạng hệ đếm 16. ví dụ:
Màu đen: Dec = 0; Hex = &H0 hay &H000000
Màu trắng: Dec = 16777215; Hex = &HFFFFFF

Trên số Hex có 6 chữ số (nếu không đủ, cứ thêm số 0 ở đằng trước)
2 số sau biểu thị màu đỏ
2 số giữa biểu thị màu lục
2 số đầu biểu thị màu lam
Mở một Project với Form1 mặc định, màu mặc định của Form1 là &H8000000F (Button Face colour), đó là màu mang số Dec là 13160917 hay Hex là C8D1D5 mà yếu tố Red là D5 hay 213; yếu tố Green là D1 hay 209 và yếu tố Blue là C8 hay 200.

Nhận xét: Số &H8000000F chuyển qua Dec là 2147483663, lớn hơn cả số Long. Đây là nhóm số đặc biệt mà VB6 quy định là màu hệ thống (System Color).
Chi tiết, bạn taykhongbatgiac đã cung cấp như sau:
"&H80000000": R = 213: G = 209: B = 200: 'Scroll Bars colour
"&H80000001": R = 63: G = 109: B = 167: 'Desktop colour
"&H80000002": R = 0: G = 0: B = 107: 'Active Title Bar colour
"&H80000003": R = 128: G = 128: B = 128: 'Inactive Title Bar colour
"&H80000004": R = 213: G = 209: B = 200: 'Menu Bar colour
"&H80000005": R = 255: G = 255: B = 255: 'Window Background colour
"&H80000006": R = 0: G = 0: B = 0: 'Window Frame colour'
"&H80000007": R = 0: G = 0: B = 0: 'Menu Text colour
"&H80000008": R = 0: G = 0: B = 0: 'Window Text colour
"&H80000009": R = 255: G = 255: B = 255: 'Active Title Bar Text colour
"&H8000000A": R = 213: G = 209: B = 200: 'Active Border colour
"&H8000000B": R = 213: G = 209: B = 200: 'Inactive Border colour
"&H8000000C": R = 128: G = 128: B = 128: 'Application Workspace colour
"&H8000000D": R = 0: G = 0: B = 107: 'Highlight colour
"&H8000000E": R = 255: G = 255: B = 255: 'Highlight Text colour
"&H8000000F": R = 213: G = 209: B = 200: 'Button Face colour
"&H80000010": R = 128: G = 128: B = 128: 'Button Shadow colour
"&H80000011": R = 128: G = 128: B = 128: 'Disabled Text colour
"&H80000012": R = 0: G = 0: B = 0: 'Button Text colour
"&H80000013": R = 213: G = 209: B = 200: 'Inactive Toolbar Text colour
"&H80000014": R = 255: G = 255: B = 255: 'Button Highlight colour
"&H80000015": R = 213: G = 209: B = 200: 'Button Dark Shadow colour
"&H80000016": R = 213: G = 209: B = 200: 'Button Light Shadow colour
"&H80000017": R = 0: G = 0: B = 0: 'Tooltip Text colour
"&H80000018": R = 255: G = 255: B = 225: 'Tooltip colour

Ngoài ra, trong thư viện VBRUN, với Enum ColorConstants, ta có các hằng sau:
Const vbBlack = 0
Const vbBlue = 16711680 (&HFF0000)
Const vbCyan = 16776960 (&HFFFF00)
Const vbGreen = 65280 (&HFF00)
Const vbMagenta = 16711935 (&HFF00FF)
Const vbRed = 255 (&HFF)
Const vbWhite = 16777215 (&HFFFFFF)
Const vbYellow = 65535 (&HFFFF)

B- Cách đổi trị số Long ra các yếu tố RGB và ngược lại
1- Phân tích số Long ra RGB: có rất nhiều cách
* Đổi số Long qua dạng Hex, 2 số sau là R, 2 số giữa là G và 2 số đầu là B. Nếu số Hex không đủ 6 chữ số, ta cứ thêm số 0 ở đầu cho đủ
*

Mã: Chọn hết

  1. Private Function TachMau(Mau As Long) As String
  2. dim red as long, green as long, blue as long
  3. red = Mau And &HFF
  4. green = (Mau And &HFF00&) \ &H100&
  5. blue = (Mau And &HFF0000) \ &H10000
  6. TachMau = "R: " & CStr(red) & " G: " & CStr(green) & " B: " & CStr(blue)
  7. End Function

*

Mã: Chọn hết

  1. Private Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" (ByRef Destination As Any, ByRef Source As Any, ByVal Length As Long)
  2. Private Function TáchMau(Mau As Long) As String
  3. Dim m(2) As Byte
  4. CopyMemory m(0), Mau, 3
  5. TáchMau = "R: " & m(0) & " G: " & m(1) & " B: " & m(2)
  6. End Function

Xem thêm:
viewtopic.php?f=7&t=7251&p=45714&hilit=copymemory+m%C3%A0u#p45692

2- Từ các trị R, G và B. Chuyển thành số Long:
Ví dụ đã dùng: "&H8000000F": R = 213: G = 209: B = 200: 'Button Face colour
Ta dùng code sau:

Mã: Chọn hết

  1. MsgBox RGB(213, 209, 200)


C- Các cách trộn màu sắc
Nhấn mạnh rằng, dù cách trộn gì thì code VB6 cũng dựa trên hàm RGB

1- Trộn màu nguồn sáng (hay dùng)
Hay gọi là trộn màu cọng
* Trong không gian đen thui (không có ánh sáng) ta rọi tới nền trắng tia đỏ 255 và tia lục 255, kết quả ta có màu vàng (FFFF).
* Nếu ta rọi tia đỏ 170 và một tia đỏ 50, ta cũng chỉ thu được màu đỏ 170. Hoàn toàn tia đỏ không đậm hơn, nghĩa là ta không thể có màu đỏ 220.

Cho đến nay (nhờ Google) tôi chưa được đọc một code VB6 nào về pha màu tốt

Các phép toán AND, OR, XOR NOT lại càng không thể dùng được! Đây là các phép toán trên hệ nhị phân, không thể ứng dụng trong việc trộn màu.
Tôi ví dụ,
Rọi tia đỏ 224 và tia đỏ 225. Nếu dùng phép OR ta thu được kết quả 225
Rọi tia đỏ 224 và tia đỏ 223. Nếu dùng phép OR ta thu được kết quả 255

Bạn có quyền viết code theo ý riêng, miễn sao tuân thủ các điều kiện sau:
* red 255 + green 255 = yellow = 65535 (&HFFFF)
* red 255 + blue 255 = Magenta = 16711935 (&HFF00FF)
* green255 + blue 255 = Cyan = 16776960 (&HFFFF00)
* red 255 + green 255 + blue 255 = White = 16777215 (&HFFFFFF)
* red a + red b = red a nếu a>b

Để trộn 2 màu bất kỳ, trước tiên ta tách mỗi màu thành các yếu tố cơ bản R1, G1 và B1; R2, G2 và B2
sau đó phối hợp các yếu tố cùng nhóm (R1 và R2), (G1 và G2), (B1 và B2)
Việc phối hợp yếu tố cùng nhóm, tôi dùng code như sau:

Mã: Chọn hết

  1. If R1 > R2 then R = R1 Else R = R2
  2. KetQua = RGB(R, G, B)


2- Trộn màu chất liệu (sơn, mực...)
Hay gọi là trộn màu trừ
Với lọ sơn màu đỏ và lọ sơn màu lục, khi trộn, ta hy vọng thu màu vàng như mục C-1.
Kết quả lại là màu đen!

Các điều kiện cần tuân thủ khi viết code trộn màu chất liệu
* Cyan (FFFF00) + Magenta (FF00FF) = Blue (FF0000)
* Cyan (FFFF00) + Yellow (FFFF) = Green (FF00)
* Magenta (FF00FF) + Yellow (FFFF) = Red (FF)
* Cyan + Magenta + Yellow = Black (0)

Tôi viết code trộn màu chất liệu như sau:

Mã: Chọn hết

  1. KetQua = RGB(Abs(R - 255), Abs(G - 255), Abs(B - 255))


D- Mã nguồn và Project đính kèm:
Ghi chú: Code tôi viết bạn có quyền không đồng ý và chỉnh sửa lại tùy thích

Mã: Chọn hết

  1. Private Sub Command1_Click()
  2.     If Command1.Caption = "+" Then
  3.         Command1.Caption = "-"
  4.         Me.Caption = "Trôn màu -> Châ't liêu: Nê`n Tra'ng"
  5.     Else
  6.         Command1.Caption = "+"
  7.         Me.Caption = "Trôn màu -> Nguô`n sáng: Nê`n Ðen"
  8.     End If
  9. Màu
  10. End Sub
  11.  
  12. Private Sub Form_Load()
  13. ' Code: truongphu 2009
  14. Màu
  15. End Sub
  16. Private Sub Màu()
  17. Label1.Caption = HScroll1.Value
  18. Label2.Caption = HScroll2.Value
  19. Label3.Caption = HScroll3.Value
  20. Label5.Caption = HScroll4.Value
  21. Label6.Caption = HScroll5.Value
  22. Label7.Caption = HScroll6.Value
  23.  
  24. If Command1.Caption = "+" Then  '''''''''''''''''''''''''''''' Cong Màu
  25. Label1.BackColor = vbRed
  26. Label5.BackColor = vbRed
  27. Label2.BackColor = vbGreen
  28. Label6.BackColor = vbGreen
  29. Label3.BackColor = vbBlue
  30. Label7.BackColor = vbBlue
  31. Label12.BackColor = vbRed
  32. Label11.BackColor = vbGreen
  33. Label10.BackColor = vbBlue
  34. Label4.BackColor = RGB(HScroll1.Value, HScroll2.Value, HScroll3.Value)
  35. Label8.BackColor = RGB(HScroll4.Value, HScroll5.Value, HScroll6.Value)
  36.     Dim R1&, G1&, B1&
  37.         If (HScroll1.Value > HScroll4.Value) Then R1 = HScroll1.Value Else R1 = HScroll4.Value
  38.         If (HScroll2.Value > HScroll5.Value) Then G1 = HScroll2.Value Else G1 = HScroll5.Value
  39.         If (HScroll3.Value > HScroll6.Value) Then B1 = HScroll3.Value Else B1 = HScroll6.Value
  40.     Label9.BackColor = RGB(R1, G1, B1)
  41.     Label12.Caption = R1
  42.     Label11.Caption = G1
  43.     Label10.Caption = B1
  44.    
  45. Else   ''''''''''''''''''''''''''''''''  Tru' Màu
  46. Label1.BackColor = vbCyan
  47. Label5.BackColor = vbCyan
  48. Label2.BackColor = vbMagenta
  49. Label6.BackColor = vbMagenta
  50. Label3.BackColor = vbYellow
  51. Label7.BackColor = vbYellow
  52. Label12.BackColor = vbCyan
  53. Label11.BackColor = vbMagenta
  54. Label10.BackColor = vbYellow
  55. Label4.BackColor = RGB(255 - HScroll1.Value, 255 - HScroll2.Value, 255 - HScroll3.Value)
  56. Label8.BackColor = RGB(255 - HScroll4.Value, 255 - HScroll5.Value, 255 - HScroll6.Value)
  57.      Dim R2&, G2&, B2&
  58.         If (HScroll1.Value > HScroll4.Value) Then R2 = HScroll1.Value Else R2 = HScroll4.Value
  59.         If (HScroll2.Value > HScroll5.Value) Then G2 = HScroll2.Value Else G2 = HScroll5.Value
  60.         If (HScroll3.Value > HScroll6.Value) Then B2 = HScroll3.Value Else B2 = HScroll6.Value
  61. Label9.BackColor = RGB(Abs(R2 - 255), Abs(G2 - 255), Abs(B2 - 255))
  62. Label12.Caption = R2
  63. Label11.Caption = G2
  64. Label10.Caption = B2
  65.  
  66. End If
  67. End Sub
  68.  
  69. Private Sub HScroll1_Change()
  70. Màu
  71. End Sub
  72. Private Sub HScroll2_Change()
  73. Màu
  74. End Sub
  75. Private Sub HScroll3_Change()
  76. Màu
  77. End Sub
  78. Private Sub HScroll4_Change()
  79. Màu
  80. End Sub
  81. Private Sub HScroll5_Change()
  82. Màu
  83. End Sub
  84. Private Sub HScroll6_Change()
  85. Màu
  86. End Sub
  87.  
Tập tin đính kèm
MIX COLOR truongphu.rar
(2.12 KiB) Đã tải 1062 lần


o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4762
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 515 time

Re: Căn bản màu trong VB6

Gửi bàigửi bởi truongphu » T.Sáu 19/06/2009 5:53 pm

* Hệ màu 24 bit
Kiểu hệ màu RGB chúng ta đang xét ở bài trên là hệ màu 24 bit:
Mỗi màu đơn thành phần có 8 bit: 2^8 = 256 giá trị
RGB([0-255], [0-255], [0-255])
Tổng hợp 3 thành phần màu đơn, trong hệ màu 24 bit ta có 2^(8*3=24) = 16777216 màu
hệ màu 24 bit là hệ màu thật
[Lưu ý rằng mắt thường không phân biệt nổi các tông màu xê xích 1 đơn vị trong hơn 16 triệu màu trên,
ví dụ màu trắng 16777215 (FFFFFF), màu trắng 19777214 (FFFFFE), màu trắng 16776959 (FFFEFF), màu trắng 16711679 (FEFFFF)]

* Hệ màu 32 bit
Hệ màu 32 bit thực chất cũng là hệ màu 24 bit, 8 bit dư
- hoặc không sử dụng
- hoặc sử dụng cho độ trong suốt, ký hiệu là Alpha nên hệ màu 32 bit có lúc còn gọi là hệ màu RGBA

* Hệ màu 48 bit
Mỗi màu đơn thành phần có đến 16 bit: 2^16 = 65536 giá trị
Tổng hợp 3 thành phần màu đơn, trong hệ màu 48 bit ta có 2^(16*3=48) = 281474976710656 màu
(hơn 280 triệu triệu = hơn 280 ngàn tỉ màu khiếp thật!)
Nghe nói hệ màu nầy được dùng trong Photoshop của Adobe
Để các bạn có thể hình dung rõ hơn, tôi minh họa như sau:
ứng với mỗi màu trong hệ RGB 24 bit, hệ màu 48 bit chia nhỏ thêm thành 16777216 màu
(hệ màu 24 bit 16777216 * 16777216 = 281.474.976.710.656 màu hệ 48 bit)

* Hệ màu 16 bit
- hệ 555 (15 bit)
Mỗi màu đơn thành phần có đến 5 bit: 2^5 = 32 giá trị
Tổng hợp 3 thành phần màu đơn, trong hệ màu 15 bit ta có 2^(5*3=15) = 32768 màu
- hệ 565 (16 bit):
thành phần Lục (Green) được 6 bit (vì mắt có thể cảm nhận màu này tốt hơn so với các màu khác)
2 thành phần còn lại, mỗi có 5 bit
Tổng hợp 3 thành phần màu đơn, trong hệ màu 16 bit ta có 2^(16) = 65536 màu

Bạn nào có card VGA yếu, nên chọn hệ màu nầy để đở hao tài nguyên máy. Hình xem vẫn đẹp (hay do tôi mắt kém?)

* Hệ màu 8 bit có 256 màu, 4 bit có 16 màu, 1 bit có 2 màu (đen-trắng)
Mấy hệ bé tí nầy tôi ít tường
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4762
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 515 time

Re: Căn bản màu trong VB6

Gửi bàigửi bởi truongphu » T.Sáu 19/06/2009 8:23 pm

Bài viết sau đây copy ở trang:
http://www.3c.com.vn/Story/vn/hotrokhac ... 53365.html

Tạo hiệu ứng chuyển màu trong VB6

Không gian RGB:

Không gian RGB dùng 3 màu cơ bản đỏ (Red), xanh lá cây (Green), xanh dương (Blue) để tạo nên các màu khác. Trong không gian này, màu sắc được tạo ra bằng cách tổng hợp ba màu trên, trong đó, mỗi thành phần màu mang một giá trị, giá trị này cho biết cường độ thành phần màu đó tham gia vào màu tổng hợp. Miền giá trị của mỗi màu cơ bản là từ 0 đến 255. Như vậy, trong không gian RGB, ta có thể tạo ra 2563 màu (hơn 16 triệu màu).

Không gian RGB được minh họa bằng hệ trục tọa độ 3 chiều với các trục là R, G, B.
1.jpg
1.jpg (6.96 KiB) Đã xem 8450 lần


Nguyên tắc tạo hiệu ứng chuyển màu:

Giả sử bạn muốn tạo hiệu ứng chuyển màu từ màu C1 (R1, G1, B1) sang màu C2 (R2, G2, B2). Trong hệ tọa độ màu, bạn nối hai điểm màu này sẽ được một đoạn thẳng (chính là tập hợp các điểm màu). Trải đều các điểm màu này lên một chiều dài là bạn đã tạo ra hiệu ứng chuyển màu từ màu C1 (R1, G1, B1) sang màu C2 (R2, G2, B2) trên chiều dài đó. Mỗi điểm màu cấu tạo bởi 3 thành phần R, G, B nên chia đều các điểm màu cũng chính là chia đều từng thành phần R, G, B.

Cách thực hiện như thế nào? Ta chia chiều dài cần tô màu thành n khoảng, mỗi khoảng được tô bởi một màu. Khoảng thứ nhất được tô bằng màu C1 (R1, G1, B1), khoảng thứ n được tô bằng màu C2 (R2, G2, B2). Thành phần R thay đổi từ R1 đến R2 sẽ phải chia đều cho n khoảng, do vậy hai khoảng kế nhau có thành phần R chênh lệch nhau (R2-R1)/n. Tương tự, thành phần G và B ở hai khoảng kế nhau sẽ chênh lệch nhau (G2-G1)/n và (B2-B1)/n.
2.jpg
2.jpg (5.78 KiB) Đã xem 8450 lần


Lần lượt tô từng khoảng với màu sắc thay đổi theo nguyên tắc trên sẽ tạo ra hiệu ứng chuyển màu trên chiều dài cần tô màu.

Hiệu ứng chuyển màu trên Form:

Ta sẽ viết chương trình tô chuyển màu Form theo chiều ngang từ màu (R1,G1,B1) sang màu (R2,G2,B2).
3.jpg
3.jpg (4.02 KiB) Đã xem 8450 lần


Bạn tạo một Project mới thuộc loại Standard EXE. Các thuộc tính của Form1:

(Name): Form1
AutoRedraw: True
DrawWidth: 1
ScaleMode: 3 - Pixel
Ta cho một khoảng ở đây là đoạn thẳng độ lớn 1 pixel, do vậy số khoảng cũng là chiều dài của Form. Để tô màu cho một khoảng, ta dùng phương thức Line của Form (vẽ đường thằng).
Phần mã chương trình:

Mã: Chọn hết

  1. Option Explicit
  2.  
  3. Private Sub Gradient(R1 As Integer, G1 As Integer, B1 As Integer, R2 As Integer, G2 As Integer, B2 As Integer)
  4.  
  5. Dim R As Integer
  6.  
  7. Dim G As Integer
  8.  
  9. Dim B As Integer
  10.  
  11. Dim dR As Single
  12.  
  13. Dim dG As Single
  14.  
  15. Dim dB As Single
  16.  
  17. Dim i As Integer
  18.  
  19. dR = (R2 - R1) / Form1.ScaleWidth
  20.  
  21. dG = (G2 - G1) / Form1.ScaleWidth
  22.  
  23. dB = (B2 - B1) / Form1.ScaleWidth
  24.  
  25. For i = 0 To Form1.ScaleWidth
  26.  
  27.   R = R1 + dR * i
  28.  
  29.   G = G1 + dG * i
  30.  
  31.   B = B1 + dB * i
  32.  
  33.   Form1.Line (i, 0)-(i, Form1.ScaleHeight), RGB(R, G, B)
  34.  
  35. Next i
  36.  
  37. End Sub
  38.  
  39. Private Sub Form_Load()
  40.  
  41.   Gradient 255, 0, 0, 0, 0, 0
  42.  
  43. End Sub
  44.  

Bạn có thể áp dụng tương tự để tô chuyển màu một PictureBox, hoặc tô chuyển màu theo chiều dọc.

Viết chữ chuyển màu:

Chương trình sẽ viết ra trên Form dòng chữ chuyển từ màu (R1, G1, B1) sang màu (R2, G2, B2) (bạn có thể áp dụng tương tự để viết chữ chuyển màu trên một PicturexBox).

4.jpg
4.jpg (5.12 KiB) Đã xem 8450 lần


Ta cho một khoảng là từng ký tự của dòng chữ, do vậy số khoảng cũng là số ký tự của dòng chữ. Từng khoảng (từng ký tự) sẽ được viết với các màu khác nhau.

Bạn tạo một Project mới thuộc loại Standard EXE. Thuộc tính AutoRedraw của Form1 là True.

Phần mã chương trình:

Mã: Chọn hết

  1. Option Explicit
  2.  
  3. Private Sub ShadeText(x As Integer, y As Integer, R1 As Integer, G1 As Integer, B1 As Integer, R2 As Integer, G2 As Integer, B2 As Integer, s As String)
  4.  
  5. Dim R As Integer
  6.  
  7. Dim G As Integer
  8.  
  9. Dim B As Integer
  10.  
  11. Dim dR As Single
  12.  
  13. Dim dG As Single
  14.  
  15. Dim dB As Single
  16.  
  17. Dim i As Integer
  18.  
  19.     dR = (R2 - R1) / Len(s)
  20.  
  21.     dG = (G2 - G1) / Len(s)
  22.  
  23.     dB = (B2 - B1) / Len(s)
  24.  
  25.     Form1.CurrentX = x
  26.  
  27.     Form1.CurrentY = y
  28.  
  29.     For i = 1 To Len(s)
  30.  
  31.         R = R1 + dR * i
  32.  
  33.         G = G1 + dG * i
  34.  
  35.         B = B1 + dB * i
  36.  
  37.         Form1.ForeColor = RGB(R, G, B)
  38.  
  39.         Form1.Print Mid$(s, i, 1);
  40.  
  41.     Next i
  42.  
  43. End Sub
  44.  
  45. Private Sub Form_Load()
  46.  
  47.   ShadeText 120, 180, 255, 0, 0, 0, 0, 255, "This text fades from red to blue."
  48.  
  49. End Sub
  50.  

Kết quả rất ấn tượng, nhưng cách làm lại rất đơn giản! Chúc bạn thành công!
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

lapxiem
Bài viết: 1
Ngày tham gia: T.Tư 15/05/2013 2:21 pm

Re: Căn bản màu trong VB6

Gửi bàigửi bởi lapxiem » T.Năm 16/05/2013 5:37 pm

Có ai không cứu mình với .có cách nào lick chuột trái thì shap1 nhận màu lick chuọt phải thì sp2 nhan màu khi ta chạy form không??????????
cái form nằm ở đây nha
https://docs.google.com/file/d/0B27JGaQ ... sp=sharing


Quay về “[VB] Bài viết hướng dẫn”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách