win8风格显示控件
不少usartGPU的用户还是对win8界面情有独钟,因为可以没有美工基础做出漂亮的界面,但是usartGPU中方便的组合语句在sHMIctrl这种控件机制下显得不是很切合,虽说如此,我们还是制作了一个控件,可以用这个控件通过多个这样的控件完成win8界面的显示。
属性:
属性名 | 描述 | 默认值 | 备注 |
---|---|---|---|
x1 | 左上角X1坐标 | 0 | |
y1 | 左上角y1坐标 | 0 | |
x2 | 右下角X2坐标 | 200 | |
y2 | 右下角y2坐标 | 160 | |
status | 状态寄存器 | 128 | 这里设置定时值可以驱动随机数演示 |
status2 | 状态寄存器 | 0 | |
boxnum | win8box的颜色配色方案编号 | 1 |
事件:
事件名 | 描述 | 备注 |
---|---|---|
onclick | 在此书写按钮按下后的代码 |
使用方法:
把控件放在页面上之后,需要在页面代码中继承控件的show方法,从而完成单独控件的显示,该控件和按钮控件一样,支持onclick方法
void w1.show()
{
super.show(); //调用原控件的父方法显示外框
sxy(w1.x1,w1.y1); //偏移原点,这样下面的语句方便定位
sbc(50+boxnum); //设置背景色为方框背景色
//在此书写该box内的显示界面,由于使用了SXY语句,因此方框左上角坐标被偏移成(0,0)
sxy(0,0);
}
可以看到继承w1.show方法后,控件显示的内容就可以由语句控制了;如果需要在方框内显示透明图,请参见boxsbc 语句。
配色方案
我们已经将metro配色方案封装到原始默认的颜色值中:
方案号(boxnum 1~9) | 边框色(对应颜色号41~49) | 方框背景色(对应颜色号51~59) |
---|---|---|
1 | 41-0x75d7 | 51-0x44f4 |
2 | 42-0x3b94 | 52-0x23bd |
3 | 43-0xdb8b | 53-0xd245 |
4 | 44-0x9bcb | 54-0x8505 |
5 | 45-0x7bd7 | 55-0x5295 |
6 | 46-0xd4c9 | 56-0xd3e2 |
7 | 47-0x824f | 57-0x60a8 |
8 | 48-0x956b | 58-0x7cc5 |
9 | 49-0x9317 | 59-0x7194 |