plus怎么实现切图效果

By admin at 2018-01-28 • 0人收藏 • 329人看过

还是别折腾这个了,本来就不支持,勉强没有用,plus控件本来就支持用GDI+任意扩展

import inet.http;var pngData = inet.http().get("http://www.baidu.com/img/baidu_logo.gif");var bitmap = gdip.bitmap( pngData )var bitmagNew = gdip.bitmap(50,50);bitmagNew.graphics.drawImageRectRect(bitmap,0,0,50,50,30,30,50,50)winform.plus.skin(    background = {          default = bitmagNew;    })

关键代码就一句 bitmagNew.graphics.drawImageRectRect(bitmap,0,0,50,50,30,30,50,50)就算你不切图,你还是要指定一大堆坐标的

plus控件扩展是非常方便的,在winform.plus.onDrawBackground事件里,还可以自己用GDI+画,GDI+很方便刚才发的那个代码写复杂了,实际上用 bitmap.clone(30,30,50,50) 就可以了,本来想加个函数,发现已经有了

可以直接切分图像

  winform.plus.skin(    background = {          default = gdip.bitmap( "你的图像路径" ).clone(30,30,50,50) ;    })



2 个回复 | 最后更新于 2018-04-06
2018-01-28   #1

IMG_2365.PNG

2018-04-06   #2

校长更新了bitmap库新增一个函数split,使切图更方便了.

blob.png

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add(
button={cls="button";text="生成预览";left=512;top=368;right=760;bottom=468;z=3};
plus={cls="plus";left=135;top=107;right=405;bottom=335;bgcolor=15780518;z=1};
plus2={cls="plus";left=544;top=69;right=737;bottom=196;bgcolor=12639424;notify=1;repeat="center";z=2};
static={cls="static";text="行数";left=514;top=317;right=546;bottom=337;transparent=1;z=6};
static2={cls="static";text="列数";left=642;top=316;right=677;bottom=336;transparent=1;z=7};
上={cls="edit";text="0";left=232;top=72;right=298;bottom=99;align="center";edge=1;multiline=1;z=8};
下={cls="edit";text="0";left=225;top=341;right=291;bottom=368;align="center";edge=1;z=10};
列数={cls="edit";text="4";left=691;top=314;right=757;bottom=341;align="center";edge=1;z=5};
右={cls="edit";text="0";left=415;top=210;right=481;bottom=237;align="center";edge=1;z=9};
左={cls="edit";text="0";left=57;top=209;right=123;bottom=236;align="center";edge=1;z=11};
行数={cls="edit";text="1";left=554;top=314;right=620;bottom=341;align="center";edge=1;z=4}
)
/*}}*/

var file = "";
import gdip.bitmap;
winform.onDropFiles = function(files){
	file = files[1];
	winform.plus.background = file;
}

winform.button.oncommand = function(id,event){
	var bitback = gdip.bitmap(file).split(winform.列数.text,winform.行数.text,winform.上.text,winform.右.text,winform.下.text,winform.左.text)
	winform.plus2.skin(
		background = {
			default = bitback[1]; 
			hover = bitback[2];
			active = bitback[3];
		}
	)
}


winform.plus2.oncommand = function(id,event){
	
}

winform.show() 
win.loopMessage();


登录后方可回帖

登 录
信息栏
本站永久域名:HtmLayout.Cn
纯私人站,当笔记本用的,学到哪写到哪,目前正在学aardio+halcon机器视觉.
本 站 主 站:Stm32cube中文网
Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
黑猫Aar教程网:简码编程
C大Aardio论坛:Aar爱好者论坛
AARDIO语言QQ群:70517368
赞助商:才仁机械
下载站:非凡软件站
Loading...