aardio - plus编辑框特效

1、垂直对齐

 

2、鼠标移入移出、编辑框编辑状态时,不同的边框颜色。

效果:

代码:

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add(
plus={cls="plus";left=158;top=125;right=621;bottom=157;align="left";border={color=-2236963;width=1};color=255;editable="edit";font=LOGFONT(h=-16;name='Fixedsys');notify=1;textPadding={left=5;top=1;right=1;bottom=1};z=1}
)
/*}}*/

winform.show();
winform.plus.editBox.setCueBannerText("请在此输入内容:")
var setcolor=function(c){
	winform.plus.border = {color=c;width=1}
	winform.plus.redraw()
}
var crect = winform.plus.editBox.getClientRect();
var rect = winform.plus.editBox.getRect();
rect.top += (rect.bottom-rect.top-(crect.bottom-crect.top))/2;
winform.plus.editBox.setRect(rect);
winform.plus.backgroundColor = ..gdi.argbReverse(winform.plus.editBox.bgcolor);
winform.plus.redraw()
winform.plus.onMouseEnter = function(wParam,lParam){
	 setcolor(0xFF999999);
 	 winform.plus.capture=true
}
winform.plus.editBox.onFocusGot = function(){ 
	 setcolor(0xFFFF0000);
 	 winform.plus.capture=true	
}
winform.plus.editBox.onFocusLost = function(){
	import mouse
	var x,y = mouse.getPos();
	var rect = winform.plus.getRect(true);
	if ::PtInRect(rect,x,y) {
	 	setcolor(0xFF999999);
	} else {
	 	setcolor(0xFFDDDDDD);
		winform.plus.capture=false	
	}
}
winform.plus.editBox.onOk = function(){ 
	winform.setFocus()
	return true; 	
}
winform.plus.onMouseMove = function(wParam,lParam){
		var x,y = win.getMessagePos(lParam);
		var rect = winform.plus.getRect(true);
		if !(x>0 and y>0 and x<rect.right-rect.left and y<rect.bottom-rect.top) {
			if win.getFocus()!=winform.plus.editBox.hwnd{
				setcolor(0xFFDDDDDD);
				winform.plus.capture=false
			}
		}
}
winform.plus.onMouseDown = function(wParam,lParam){
 	var x,y = win.getMessagePos(lParam);
	var rect = winform.plus.getRect(true);
	if !(x>0 and y>0 and x<rect.right-rect.left and y<rect.bottom-rect.top) {
		winform.setFocus()
	}    
}
win.loopMessage();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卢光庆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值