aardio 文档
aardio 范例: 剪贴板图像
//剪贴板图像
import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=637;bottom=450;)
winform.add(
btnRead={cls="button";text="读取剪贴板图像";left=249;top=379;right=404;bottom=419;db=1;dr=1;z=3};
btnWrite={cls="button";text="截屏并写入剪贴板";left=428;top=379;right=598;bottom=419;db=1;dr=1;z=2};
picturebox={cls="plus";left=21;top=16;right=617;bottom=360;db=1;dl=1;dr=1;dt=1;edge=1;repeat="scale";transparent=1;z=1}
)
/*}}*/
import win.clip;
import process.imageView;
import gdip.bitmap;
winform.btnRead.oncommand = function(id,event){
var hBmp = win.clip.readBitmap()
if(!hBmp){
return winform.msgboxErr("剪贴板没有图像");
}
//存为图像文件
com.picture.fromBitmap(hBmp).Save("/clip.jpg")
//转换为 GDI+ 图像
var bmp = gdip.bitmap(hBmp);
winform.picturebox.background = bmp;
//存为图像文件
bmp.save("/clip.jpg")
//存为 16 位 BMP 文件
var bmp16 = bmp.clone(,,,,0x21005/*_PixelFormat16bppRGB555*/);
bmp16.save("/16.bmp");
//预览图像
process.imageView("/clip.jpg")
}
import gdip.snap;
winform.btnWrite.oncommand = function(id,event){
//截屏
var bmp = gdip.snap();
//显示图像
winform.picturebox.background = bmp;
//获取位图句柄
var hBmp = bmp.copyHandle();
//写入剪贴板
win.clip.writeBitmap(
hBmp, //位图句柄
true, //让剪贴板接管位图,也就不用再复制,也不用再释放 hBmp 了
true //清空剪贴板中其他格式数据
);
//如果上面的参数 @2 不是 true,就要用下面的代码释放位图
//::DeleteObject(hBmp);
}
winform.show();
win.loopMessage();
Markdown 格式