说下思路,不一定对,随机颜色的化,每次随机三个 0到255的数字,组合成一个RGB,应该就可以了,现在的问题是,区分颜色之间的鲜明程度。定义一个阈值A
A= (r1-r2)^2+(g1-g2)^2+(b1-b2)^2 根据这样来计算,每生成一种颜色,就把这种颜色跟其余颜色的阈值计算出来,如果全都满足,那么就可以,如果有一个不满足,那就重新随机生成一次。
A具体的值是多少,这个你可以摸索下,设置太大的化,随机生成的颜色的数量,可能不够,太小的化,颜色的鲜明程度不满足。
实际上,上面A的公式来计算 颜色的鲜明程度 是错误的,不能这样算。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" ">
按照所提到的随机颜色有两种情况:
第一种:每个单元格随机但不一定相同
第二种:整体背景随机但颜色相同
可分别使用VBA代码实现。
alt+F11,打开vba编辑器
粘贴如下代码到编辑器中
运行即可(运行其中一个)
为 *** 作便利,可以在SHEET上增加按钮实现该 *** 作。(方法附在后面)
Sub RandColor()Dim myRange, myCell As Range
Set myRange = Range("A1:B10")
For Each myCell In myRange
myCellInteriorColor = ApplicationWorksheetFunctionRandBetween(0, 16777216)
Next
End Sub
Sub RandColor2()
Dim myRange, myCell As Range
Set myRange = Range("A1:B10")
myRangeInteriorColor = ApplicationWorksheetFunctionRandBetween(0, 16777216)
End Sub
插入VBA按钮的方法:
菜单栏->开发工具->插入->表单工具,点击第一个按钮
点击之后出现对话框,选择其中一个宏(业已输入到VBA编辑框中的)
确认,之后点击按钮即可实现 *** 作目标。
以上就是关于Java随机生成颜色全部的内容,包括:Java随机生成颜色、html怎么让字体得到随机颜色、excel随机单元格背景颜色怎么实现等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)