首页 > 基础资料 博客日记
customPlus ——经典双色配色示例
2026-05-18 17:30:03基础资料围观24次
这篇文章介绍了customPlus ——经典双色配色示例,分享给大家做个参考,收藏极客资料网收获更多编程知识

1 import win.ui; 2 import fonts.fontAwesome 3 import godking.customPlus; 4 import color; 5 import win.clip; 6 /*DSG{{*/ 7 var winform = win.form(text="经典双色配色示例";right=783;bottom=567) 8 winform.add( 9 plus={cls="plus";left=8;top=8;right=752;bottom=560;bgcolor=0xC0DCC0;db=1;dl=1;dr=1;dt=1;notify=1;z=1}; 10 scrollbar={cls="scrollbar";left=752;top=8;right=776;bottom=560;db=1;dr=1;dt=1;edge=1;z=2} 11 ) 12 /*}}*/ 13 14 var itemModel = { 15 // 1. 主颜色 16 { 17 name="mainColor"; 18 type="rect"; 19 rectf={x=3; y=3; width=-3; height=-3}; 20 }; 21 // 2. 辅颜色 22 { 23 name="subColor"; 24 type="rect"; 25 rectf={x=3; y=103; width=-3; height=-3}; 26 }; 27 // 3. 主颜色名称 28 { 29 name="mainColorName"; 30 type="text"; 31 rectf={x=20; y=10; width=120; height=40}; 32 align=0; 33 valign=1; 34 smooth=true; 35 }; 36 // 4. 主颜色代码 37 { 38 name="mainColorCode"; 39 type="text"; 40 rectf={x=20; y=50; width=-8; height=24}; 41 align=0; 42 valign=1; 43 smooth=true; 44 }; 45 // 5. 辅颜色名称 46 { 47 name="subColorName"; 48 type="text"; 49 rectf={x=20; y=116; width=100; height=24}; 50 align=0; 51 valign=1; 52 smooth=true; 53 }; 54 // 6. 辅颜色代码 55 { 56 name="subColorCode"; 57 type="text"; 58 rectf={x=20; y=136; width=136; height=24}; 59 align=0; 60 valign=1; 61 }; 62 63 // 7. 复制按钮背景 64 { 65 name="btnCopyBg"; 66 type="rect"; 67 rectf={x=-70; y=-36; width=-12; height=24}; 68 round=4; 69 width=1; 70 color=0xAA107C10; 71 fillcolor=0xFFFFFFFF; 72 hoveredfillcolor=0xFF7C00FC; 73 hover=true; 74 cursor=32649; 75 click=true; 76 }; 77 // 8. 复制按钮文字 78 { 79 name="btnCopyText"; 80 type="text"; 81 rectf={x=-70; y=-36; width=-12; height=24}; 82 font={name='FontAwesome'; h=12; color=0xFF000000}; 83 hoveredfont={name='FontAwesome'; h=12; color=0xFFFFFFFF}; 84 hover=true; 85 cursor=32649; 86 align=1; 87 valign=1; 88 }; 89 // 外层圆角处理 90 { 91 type="rect"; 92 rectf={x=1; y=1; width=-1; height=-1}; 93 width=6; 94 color=0xFFFFFFFF; 95 }; 96 { 97 type="rect"; 98 rectf={x=1; y=1; width=-1; height=-1}; 99 width=6; 100 round=10; 101 color=0xFFFFFFFF; 102 }; 103 // 当前复制项边框 104 { 105 type="rect"; 106 name="activeborder"; 107 rectf={x=6; y=6; width=-6; height=-6}; 108 width=3; 109 round=4; 110 color=0; 111 }; 112 { 113 type="rect"; 114 name="activeborder1"; 115 rectf={x=8; y=8; width=-8; height=-8}; 116 width=1; 117 round=3; 118 color=0; 119 }; 120 }; 121 122 var colors = { 123 {"#002FA7";"克莱因蓝";"#FFCF14";"靓丽黄"}; 124 {"#FF7400";"爱马仕橙";"#2B3C3D";"沉稳灰"}; 125 {"#990033";"勃艮第红";"#DDCDB7";"象牙白"}; 126 {"#01847F";"马尔斯绿";"#FFAA93";"杏色"}; 127 {"#81D8CF";"蒂芙尼蓝";"#67AA66";"抹茶色"}; 128 {"#FFE677";"蜂蜜黄";"#FF6067";"热狗红"}; 129 {"#0081FF";"治愈蓝";"#FEF99D";"高明黄"}; 130 {"#FFDBDD";"温柔粉";"#652C97";"浪漫紫"}; 131 {"#00FD00";"荧光绿";"#0947EE";"普信蓝"}; 132 {"#00324D";"普鲁斯蓝";"#B89076";"睿智金"}; 133 {"#0D7E9C";"孔雀蓝";"#D5BA9F";"浅驼色"}; 134 {"#7FA91F";"牛油果绿";"#A8ABB0";"浅灰色"}; 135 {"#185A56";"深灰绿";"#FD742D";"橘橙色"}; 136 {"#9D73BD";"青紫色";"#7BA6D1";"飘蓝色"}; 137 {"#66D3C0";"蒂芙尼蓝";"#FDDE83";"淡黄色"}; 138 {"#2A4D6E";"深蓝灰";"#F7C45C";"活力浅黄"}; 139 {"#FF6B6B";"珊瑚红";"#4ECDC4";"薄荷青"}; 140 {"#3A405A";"深蓝紫";"#A8DADC";"浅天蓝"} 141 }; 142 143 var itemLists={}; 144 for(i=1,#colors,1){ 145 var cl = colors[i]; 146 var mainColor = color.argbReverse(color.parse(cl[1])); 147 var subColor=color.argbReverse(color.parse(cl[3])); 148 var subColorCode = {text="0x"++string.format("%X",subColor),font={name='Tahoma'; h=14; color=mainColor}}; 149 var mainColorCode = {text="0x"++string.format("%X",mainColor),font={name='Tahoma'; h=16; color=subColor}}; 150 var tt = { 151 mainColor=mainColor; 152 mainColorName={text=cl[2];font={name='Tahoma'; h=16; color=subColor}}; 153 subColor=subColor; 154 subColorName={text=cl[4];font={name='Tahoma'; h=16; color=mainColor}}; 155 subColorCode = subColorCode; 156 mainColorCode = mainColorCode; 157 copyCode = mainColorCode.text++'\r\n'++subColorCode.text; 158 btnCopyText = '\uF0C5 复制'; 159 }; 160 table.push(itemLists,tt); 161 } 162 163 var p = godking.customPlus(winform.plus/*plus*/,itemModel,itemLists,{ 164 itemWidth=170, /*项目宽度*/ 165 itemHeight=180, /*项目高度*/ 166 autoSizeWidth=true, /*自动根据项目列数及plus宽度调整项目宽度*/ 167 autoSizeHeight=false, /*自动根据项目行数及plus高度调整项目高度*/ 168 colnum=0, /*项目列数,为0则根据项目宽度和plus宽度自动计算*/ 169 rownum=0, /*项目行数,为0则根据项目高度和plus高度自动计算*/ 170 padLeft=5, /*plus左边空白距离*/ 171 padTop=5, /*plus顶边空白距离*/ 172 padRight=5, /*plus右边空白距离*/ 173 padBottom=5 /*plus底边空白距离*/ 174 }) 175 176 p.onClick = function(itemIndex/*项目索引*/,elemIndex/*元素索引*/,elemID/*元素id*/,elemName/*元素name*/,pageIndex/*当前页项目索引*/,x/*鼠标X坐标*/,y/*鼠标Y坐标*/,disabled/*项目是否禁用*/,itemRect/*项目区域*/,elemRect/*元素区域*/){ 177 /*鼠标左键单击非隐藏项目时触发该事件。当项目禁用或没有可点击元素时,默认不触发该事件。可设 allClickEvent=true 启用触发。*/ 178 if elemName=="btnCopyBg" { 179 if p.itemList[itemIndex].btnCopyText=='\uF0C5 复制' { 180 for(i=1,#p.itemList,1){ 181 p.itemList[i].btnCopyText='\uF0C5 复制'; 182 p.itemList[i].activeborder={color=0}; 183 p.itemList[i].activeborder1={color=0}; 184 } 185 p.itemList[itemIndex].btnCopyText="已复制"; 186 p.itemList[itemIndex].activeborder={color=0xDD000000}; 187 p.itemList[itemIndex].activeborder1={color=0xFFFFFFFF}; 188 win.clip.write(p.itemList[itemIndex].copyCode); 189 p.update(); 190 } else { 191 p.itemList[itemIndex].btnCopyText='\uF0C5 复制'; 192 p.itemList[itemIndex].activeborder={color=0}; 193 p.itemList[itemIndex].activeborder1={color=0}; 194 win.clip.write(""); 195 p.update(itemIndex); 196 } 197 } 198 } 199 200 p.bindScrollbar(winform.scrollbar); 201 winform.show(); 202 win.loopMessage();
文章来源:https://www.cnblogs.com/godking/p/20072599
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:

