绝对难的问题,高朽民快来SEE一SEE

bob008 2005-03-29 06:50:38
这句居然让偶的内存使用数量不断上升,郁闷,谁有办法搞DING
procedure tform1.wmmousemove(var msg:TWMMOUSEMOVE);
var
dc :hdc;
begin
dc:=getwindowdc(handle);
//这里写上TRY ,WITH CAV DO 也是一样的内存使用增加

if msg.hittest=htminbutton then
begin
bitblt...
end
else
begin
bitblt...
end;
RELEASEDC(HANDLE,DC);
...
end;
...全文
206 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
Love_birds 2005-03-30
  • 打赏
  • 举报
回复
重复创建内容空间,而每次使用完后没有即时释放内存造成的!


你要记得每次处理完后用FreeAndNil()释放所占用资源,这样会好点!
ly_liuyang 2005-03-30
  • 打赏
  • 举报
回复
估计是太频繁调用导致的问题
能否改用别的方法呢?

http://lysoft.7u7.net
何鲁青 2005-03-30
  • 打赏
  • 举报
回复
高秀敏
高秀敏
高秀敏
高秀敏
高秀敏
高秀敏
高秀敏
高秀敏
高秀敏
高秀敏
高秀敏
FCU 2005-03-30
  • 打赏
  • 举报
回复
wm_mousemove 鼠标一动就捕获消息,汗......
射天狼 2005-03-30
  • 打赏
  • 举报
回复
DELPHI也有一段时间没用了,不知道里面的关键字finally写的是不是正确,呵呵,你明白意思就行~~~~~
射天狼 2005-03-30
  • 打赏
  • 举报
回复
1、不知道你是在什么地方看的内存一直上升,是任务管理器里吗?这时看到的可能更新不及时,并且程序申请完内存之后,即使释放了,在任务管理器里也不一定马上能降下来,需要系统中有需要更大内存的程序运行的时候,你的程序内存才会降下来!

2、你可以将释放句柄的函数放在finally域里,这样能够保证句柄肯定会被释放,你也不用担心了~~~~~
flyinwuhan 2005-03-30
  • 打赏
  • 举报
回复
我RI~~~~~
bob008 2005-03-30
  • 打赏
  • 举报
回复
哎,蝎子王,你真的是没试过就乱说话,其实是不会有问题的哦~真的不会有问题

除非你在里面+上 IF 我是帅哥 THEN EXIT 之类的东东,不然是不会有这个问题的

和大家开个玩笑~~呵呵,总看不到偶的帖子能有这么多人回复哦

准备结帖子了
FCU-----------------------WMNCMOUSEMOVE 你没看到后来更正了吗?

只有 FLYINWUHAN 回答正确,确实没问题。哎,郁闷啊,这么多人就一个答对了

还是湖北的厉害,天上湖北佬,地上也是湖北佬啊
bob008 2005-03-29
  • 打赏
  • 举报
回复
并且只+不减,,是个大问题
bob008 2005-03-29
  • 打赏
  • 举报
回复
有问题啊,鼠标一到上面就内存使用增加0.01MB
flyinwuhan 2005-03-29
  • 打赏
  • 举报
回复
呵呵,没有问题啊~~~~~~~~~~~~~~~~~~~~~~~~~
bob008 2005-03-29
  • 打赏
  • 举报
回复
不会,给个例子先
DELPHI的啊,别的看不懂
cnhgj 2005-03-29
  • 打赏
  • 举报
回复
试试定义个bitmap来存Image1的图片。然后直接转移bitmap上的图像,转移后bitmap1.free;
bob008 2005-03-29
  • 打赏
  • 举报
回复
IF MSG.HITTEST=HTMAXBUTTON THEN
和上面一样的绘制而已
bob008 2005-03-29
  • 打赏
  • 举报
回复
procedure tform1.wmNCmousemove(var msg:TWMNCMOUSEMOVE);
var
dc :hdc;
begin
dc:=getwindowdc(handle);
//这里写上TRY ,WITH CAV DO 也是一样的内存使用增加

if msg.hittest=htminbutton then
begin
bitblt(DC,(WIDTH-96),0,(WIDTH-64),30,IMAGE1.CANVAS.HANDLE,0,0,SRCCOPY);

end
else
begin
bitblt(DC,(WIDTH-96),0,(WIDTH-64),30,IMAGE1.CANVAS.HANDLE,29,0,SRCCOPY);

end;
RELEASEDC(HANDLE,DC);
...
end;
aiirii 2005-03-29
  • 打赏
  • 举报
回复
在 wmmousemove 中處理, 觸發的次數太多了, 應該適當限制
bob008 2005-03-29
  • 打赏
  • 举报
回复
晕。NCMOUSEMOVE,打错了啊
flyinwuhan 2005-03-29
  • 打赏
  • 举报
回复
if msg.hittest=htminbutton then
begin
bitblt...//这部分的也贴出来吧
end
else
begin
bitblt...
end;
cnhgj 2005-03-29
  • 打赏
  • 举报
回复
wmmousemove
哇。。。你这个是不是截获鼠标消息啊。。。只要鼠标在窗体上一动你就执行哦。。。!
bob008 2005-03-29
  • 打赏
  • 举报
回复
不是吧,你是斑竹都不知道
加载更多回复(4)
YOLO系列是基于深度学习的端到端实时目标检测方法。 PyTorch版的YOLOv5轻量而性能,更加灵活和易用,当前非常流行。 本课程将手把手地教大家使用labelImg标注和使用YOLOv5训练自己的数据集。课程实战分为两个项目:单目标检测(足球目标检测)和多目标检测(足球和梅西同时检测)。  本课程的YOLOv5使用ultralytics/yolov5,在Windows和Ubuntu系统上分别做项目演示。包括:安装YOLOv5、标注自己的数据集、准备自己的数据集(自动划分训练集和验证集)、修改配置文件、使用wandb训练可视化工具、训练自己的数据集、测试训练出的网络模型和性能统计。 除本课程《YOLOv5实战训练自己的数据集(Windows和Ubuntu演示)》外,本人推出了有关YOLOv5目标检测的系列课程。请持续关注该系列的其它视频课程,包括:《YOLOv5(PyTorch)目标检测:原理与源码解析》课程链接:https://edu.csdn.net/course/detail/31428《YOLOv5目标检测实战:Flask Web部署》课程链接:https://edu.csdn.net/course/detail/31087《YOLOv5(PyTorch)目标检测实战:TensorRT加速部署》课程链接:https://edu.csdn.net/course/detail/32303《YOLOv5目标检测实战:Jetson Nano部署》课程链接:https://edu.csdn.net/course/detail/32451《YOLOv5+DeepSORT多目标跟踪与计数精讲》课程链接:https://edu.csdn.net/course/detail/32669《YOLOv5实战口罩佩戴检测》课程链接:https://edu.csdn.net/course/detail/32744《YOLOv5实战中国交通标志识别》课程链接:https://edu.csdn.net/course/detail/35209 《YOLOv5实战垃圾分类目标检测》课程链接:https://edu.csdn.net/course/detail/35284  

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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