BitBlt绘制bitmap问题 求高手

jiantheone 2012-01-17 01:45:07
Dim h As IntPtr
Dim bmp As Bitmap
bmp = Pic.Image
Dim g1 As Graphics = Graphics.FromImage(bmp)
Dim g2 As Graphics = Me.CreateGraphics
Dim hdc1 As IntPtr = g1.GetHdc
Dim hdc2 As IntPtr = g2.GetHdc
h = SelectObject(hdc1, bmp.GetHbitmap)
BitBlt(hdc2, 50, 50, bmp.Width, bmp.Height, hdc1, 0, 0, 13369376)
SelectObject(hdc1, bmp.GetHbitmap)
DeleteObject(hdc1)
DeleteObject(bmp.GetHbitmap())
DeleteDC(hdc2)
绘制第1次 不能绘制第2次 第2次就无效了 而且每点运行一次就算没绘制到屏幕上 内存会增加直到内存不足 为什么用了DeleteObject内存依然无效扩大 用GDI+倒是简单 但是GDI的效率实在是太慢了 求一个VB.net BitBlt绘制bitmap内存能正常的代码
...全文
188 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiantheone 2012-01-26
  • 打赏
  • 举报
回复
自己搞定了 内存一直增加原来是bmp.GetHbitmap()的问题
jiantheone 2012-01-24
  • 打赏
  • 举报
回复
我用的就是DirectDraw 但是往离屏面绘制图片用的是GDI
dylike 2012-01-24
  • 打赏
  • 举报
回复
要达到2D游戏的速度,需要显卡加速,不用DX或者DD是不可能达到的.
vb2014 2012-01-23
  • 打赏
  • 举报
回复
用NEt自带的不行吗
jiantheone 2012-01-23
  • 打赏
  • 举报
回复
那什么绘图速度能达到2D游戏绘制的速度呢 DirectDraw好像没有加载图像的函数
dylike 2012-01-23
  • 打赏
  • 举报
回复
BitBlt不见得能快多少.
jiantheone 2012-01-23
  • 打赏
  • 举报
回复
自带的只有GDI+ 速度很慢 绘制多了FPS跟不上 卡卡的
jiantheone 2012-01-19
  • 打赏
  • 举报
回复
自己顶一下
ccccffff 2012-01-18
  • 打赏
  • 举报
回复
结贴率太低,没人回答

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧