對於我們的winforms應用程序,我們被要求以紅色對DataGridView
中的無效單元格進行着色。我們需要找到與當前視覺樣式相匹配的紅色,但如果用戶選擇了大多數爲紅色的調色板,則該顏色仍然具有獨特性。如何創建與當前視覺樣式相匹配的顏色?我如何確保避免衝突?如何創建與當前視覺樣式相匹配的顏色?
回答
我認爲你看着這個錯誤的方式。紅色通常有幾個原因。這是(在西方文化等)通常用來描繪某些事情是錯誤或危險的。但紅色也是一種突出的顏色。但是,當試圖引導用戶注意頁面上的某些內容時,有兩種可靠的方法。
1)GIF動畫或視頻(煩人爲f ***)或
2)發生衝突的顏色
通常是紅色的脫穎而出,但在你的情況下,用戶可能有一個紅色的主題風格,你最好的選擇是使用會衝突的顏色。碰撞的顏色可能會碰撞在一起(如果有意義的話)。
這裏是我在過去使用的幾個網站幫我找的配色方案,可以幫助您,以及:
Kuler,Color Combos和Color scheme designer
這可能不是回答你正在尋找,但我希望它可以幫助
這個問題有點模糊,有點主觀;直接評論例子要容易得多。但是,有一個multitude of on-line tools可以幫助您爲網站創建調色板,並且這些可能有助於衡量特定的紅色陰影與各種其他顏色的相互作用。
希望這會有所幫助。
看看氪工具包(http://www.componentfactory.com)。他們爲主題管理器提供了一個免費的WinForms控件工具包。這個主題管理器提供了準備使用方法來提取當前顏色值。
我與他們無關。我將它用於我自己的產品(皇家TS http://www.code4ward.net),並發現它非常有用。
如果你想構建漂亮的用戶界面,你應該看看氪的東西。
我不認爲原始海報正在尋找顏色(顏色)的調色板,而是他試圖突出顯示一個無效的單元格。所選的高光顏色是紅色的,但他擔心如果用戶選擇了紅色調色板,紅色可能不會伸出。
如何處理:繪製無效單元格時,請使用SystemColors.Window作爲文本,SystemColors.WindowText作爲背景。 (或者DataGridView的任何等價物)。這樣,你可以保證無效的單元格將是正常單元格的相反顏色。
你可能會嘗試使用ControlPaint類的Light和Dark方法?我做了類似的事情,儘管方向相反。我需要使網格中的某些行突出顯示,但不會像選定的行一樣突出顯示。所以,我創建了一個顏色比默認選擇顏色像這樣輕了一點:
checkedColor = ControlPaint.Light(grid.DefaultCellStyle.SelectionBackColor, 1.65f);
可以嘗試使用,可能增加了一些邏輯,以及基於它的一些系統的顏色,是由脫穎而出。例如System.Drawing.SystemColors.HighLight
或System.Drawing.SystemColors.HotTrack
。
- 1. 如何將我的控件的樣式與當前主題相匹配? (WPF)
- 2. 將箭頭顏色與D3中的線條顏色相匹配
- 3. 如何創建與當前投影矩陣匹配的glClipPlanes?
- 4. 如何讓點標籤與jqplot中的欄顏色相匹配?
- 5. Excel sumif與當前小時相匹配
- 6. 如何匹配RGB顏色與RGBA顏色
- 7. 如何使文本顏色與通知顏色條匹配?
- 8. 如何創建像Stack Overflow這樣的視覺差異視圖?
- 9. 如何將當前頁面網址與導航欄相匹配?
- 10. 如何創建Kakoune顏色格式?
- 11. 如何動態創建具有與其父級相同視覺樣式的控件?
- 12. 如何獲得LinearLayout的當前顏色?
- 13. 如何交換當前片段着色器顏色與鄰居?
- 14. 如何獲得匹配顏色#f20044
- 15. 如何創建相對內聯樣式?
- 16. JavaScript的邊框顏色/顏色樣式
- 17. 啓用視覺樣式時,是否可以覆蓋控件的顏色?
- 18. 如何將類分配給與當前URL匹配的href?
- 19. 如何創建過濾列表,如果值與公式匹配?
- 20. Android:DialogPreference顏色/樣式?
- 21. WPF樣式顏色
- 22. 如何創建與當前信息
- 23. 強制視覺樣式
- 24. 如何顏色的單詞的多個實例在視覺BASC
- 25. 如何使Edit1.Font.Charset與主題(視覺樣式)一起工作
- 26. 如何創建這樣的背景顏色?
- 27. 與當前數據匹配的用戶
- 28. 與當前會話匹配表的列
- 29. WPF視覺狀態和改變顏色
- 30. 視覺工作室線顏色
這就是我想要做的 - 使用SystemColor類的顏色 - 但客戶要求紅色。 – Simon 2009-05-19 09:24:41