mgplus库的使用之创建句柄和使用

mgplus库在绘制线条,弧线方面比较厉害,比MiniGUI核心库的一些函数(比如画线函数和rectangle画矩形函数)强大,并且没有锯齿。但是一开始在创建HGRAPHICS句柄的时候,有好几个函数都可以使用,但是每个函数的使用又会影响后面绘制内容时的具体用法,这里记录一下:

1. MGPlusGraphicCreate(width,height)

该函数创建句柄的时候不需要hdc,所以可以在控件的MSG_CREATE消息中调用,然后在控件的MSG_DESTROY中销毁,这样只需创建和销毁一次即可。在paint的时候,可以直接使用这个句柄。 但是绘制具体内容的时候,需要先调用MGPlusGraphicCopyFromDC()将目前hdc中的内容拷贝一下,然后再调用mgplus具体的绘制函数去绘制(如MGPlusDrawRectangle()),并且绘制完还要调用MGPlusGraphicSave()将绘制内容显示到hdc中,每次绘制都需要这样: 先拷贝,再绘制,再
save.(如果是两次连续绘制的话,则是:拷贝-绘制-绘制-save)

2. MGPlusGraphicCreateFromDC(hdc) 和 MGPlusGraphicCreateWithoutCanvas(hdc)

这两个函数由于创建时需要hdc,所以需要在MSG_PAINT中使用,也就会导致频繁创建和销毁;同时这两个函数在使用时,也是有区别的:
MGPlusGraphicCreateFromDC(hdc) 在使用的时候如(1)中所说,也是先拷贝,再绘制,再save。 MGPlusGraphicCreateWithoutCanvas(hdc) 在使用的时候既不需要拷贝hdc,也不需要save,直接就能将绘制的内容显示到hdc中,比较方便。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值