Tuỳ chỉnh Windows Forms Controls: ColorPicker.NET
Tháng Ba 2005
Chris Sano
Microsoft Developer Network
Summary: Chris Sano giới thiệu đến bạn ColorPicker.NET và chứng minh các kỹ thuật đã được sử dụng để xây dựng một số các điều khiển tùy chỉnh trong ứng dụng. (27 trang in)
Áp dụng cho:
Microsoft .NET Framework 1.1
Visual Basic .NET
Visual C #
Mã mẫu
Có hai bộ khác nhau của các mẫu mã mà đi kèm với bài viết này:
1. Một ảnh chụp gần đây của cây nguồn ColorPicker.NET (C chỉ #).
2. Các mã được thảo luận trong bài viết này (C # và Visual Basic .NET).
Tải CustomWindowsFormsControls_ColorPicker.msi.
Nội dung
Giới thiệu
Làm thế nào ứng dụng công trình
The Color Slider
Sử dụng thanh trượt màu trong ứng dụng của bạn
Cơ sở hạ tầng màu Slider
The Color Slider trong ColorPicker.NET
Kéo và thả
Kéo Cơ sở hạ tầng -và-Drop
Kéo và thả trong ColorPicker.NET
kết luận
về tác giả
Giới thiệu
ColorPicker.NET, như đã thấy trong hình 1, là kết quả của một dự án cá nhân nhỏ mà tôi đã thực hiện trong một nỗ lực để bẻ khóa các chức năng trong Adobe Photoshop chọn màu. Tôi làm rất nhiều công việc thiết kế giao diện người dùng, và trong nơi bắn lên Photoshop mỗi khi tôi cần thiết để thử nghiệm với một số màu sắc, tôi muốn có một ứng dụng nhẹ mà sẽ cho phép tôi để điều chỉnh và màu sắc mẫu từ không gian màu HSB và RGB, và cung cấp khả năng lưu các màu sắc mà tôi thích nhất để một bảng mẫu màu để sử dụng trong tương lai.
Hình 1. giao diện chính ColorPicker.NET
tôi viết bài này để cung cấp cái nhìn sâu sắc vào việc thực hiện của một số trong những phần thú vị hơn của các ứng dụng. Đầu tiên tôi sẽ thảo luận về các thanh trượt màu sắc, và sau đó tôi sẽ mô tả các kinh nghiệm kéo-và-thả liên quan đến cách kéo các màu sắc đang được chọn vào bảng màu swatch. Góp trong tương lai sẽ bao gồm các khu vực khác của ứng dụng.
Làm thế nào các ứng dụng Làm
Trước khi chúng tôi bắt đầu, tôi sẽ cung cấp một bỏ sót ngắn gọn về các chức năng có sẵn trong ColorPicker.NET, cũng như các thuật ngữ khác nhau được sử dụng trong bài viết.
ColorPicker. NET có hai không gian màu khác nhau, đó là lý thuyết hệ thống màu ba chiều, trong đó tọa độ được sử dụng để đại diện cho màu sắc. Các màu đỏ-xanh-màu xanh (RGB) không gian màu được tạo ra bằng cách ánh xạ những màu sắc trên hệ thống Cartesian phối hợp ba chiều. Các màu sắc bão hòa, độ sáng (HSB) không gian màu sắc công trình khác nhau, vì nó được ánh xạ lên một hình trụ hệ thống phối hợp. Huế đại diện cho màu sắc thực tế, độ bão hòa thể hiện sức mạnh hoặc độ tinh khiết của màu sắc, và độ sáng là độ sáng tương đối hoặc vùng tối của màu sắc.
Các thanh trượt màu đại diện cho một loạt các giá trị của các thành phần không gian màu được chọn. Hai thành phần khác được thể hiện trên các trục trong lĩnh vực màu sắc, đó là khu vực trên trái của giao diện trong Hình 1. Ví dụ, nếu bạn chọn các thành phần không gian màu xanh trong không gian màu RGB, phạm vi của các giá trị của màu xanh lá cây tọa độ sẽ được đại diện bởi các thanh trượt màu sắc, và tọa độ màu đỏ và màu xanh sẽ được đại diện bởi các x và y trục tương ứng, trong lĩnh vực màu sắc. Một ví dụ khác, bằng cách lựa chọn các thành phần không gian sắc màu, phạm vi của các giá trị màu sắc sẽ được đại diện bởi các thanh trượt màu và độ bão hòa và độ sáng các giá trị sẽ được đại diện bởi các x và y trục tương ứng, trong lĩnh vực màu sắc.
Khi bạn nhấp trên các lĩnh vực màu sắc, một dấu tròn xuất hiện. Các điểm rất trung tâm của điểm đánh dấu này đại diện cho màu sắc được lựa chọn. Màu này xuất hiện trong cửa sổ màu hiện đang được chọn ở trên không gian màu HSB. Nếu bạn thay đổi giá trị của các thành phần không gian màu sắc được lựa chọn bằng cách sử dụng thanh trượt màu, cửa sổ màu hiện tại sẽ phản ánh màu sắc mà nằm tại vị trí của các điểm đánh dấu tròn.
Bạn có thể thay đổi các giá trị của các thành phần không gian màu sắc cá nhân bằng cách nhập vào giá trị mong muốn trong hộp văn bản thành phần. Bạn cũng có thể gõ hoặc dán giá trị HEX trong hộp HEX.
Các khu vực bảng điều khiển màu swatch trên bên phải của giao diện trong hình 1 có chứa mẫu màu được xác định trước. Bạn có thể lấy lại không gian màu hoặc hex giá trị của swatches riêng bằng cách nhấp vào chúng. Nếu bạn muốn lưu lại bất kỳ của các màu sắc mà bạn đã chọn, bạn có thể thêm vào swatches hiện có bằng cách nhấp vào cửa sổ màu hiện đang được chọn và kéo các màu vào bảng màu swatch.
đang được dịch, vui lòng đợi..