请教高手,CopyRect的头痛的问题????在线等。。。。。。

Joininthefun 2006-07-07 12:22:19
线程中使用CopyRect频繁的在一个TBitmap上拷贝图片,随机的会出现拷贝到目标Bmp上的是空白,查原因好像是画布数据丢失,可是我在主线程中就没有这个现象,在线程中如何解决此问题呢???谢谢!
...全文
219 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Joininthefun 2006-07-10
  • 打赏
  • 举报
回复
谢谢大家帮助!
Joininthefun 2006-07-07
  • 打赏
  • 举报
回复
多谢 weixing979(★★★闪电侠★★★)
好!偶去试试
weixing979 2006-07-07
  • 打赏
  • 举报
回复
类似于

This example shows how to call a button's click method in a thread-safe manner:

void __fastcall TMyThread::PushTheButton(void)

{
Button1->Click();
}

void __fastcall TMyThread::Execute()
{
...
Synchronize(PushTheButton);
...
}
weixing979 2006-07-07
  • 打赏
  • 举报
回复
把操作函数放在Synchronize 里试一试
weixing979 2006-07-07
  • 打赏
  • 举报
回复
可以单独写一个类似于 MyCopyRect的函数,在这个函数里去 CopyRect
注意函数的声明要符合这样的 void __fastcall TMyThread::MyCopyRect(void)
constantine 2006-07-07
  • 打赏
  • 举报
回复
lz没有看PushTheButton是怎么写得吗?
constantine 2006-07-07
  • 打赏
  • 举报
回复
错了,Synchronize(函数名),或者说是函数指针,不能有参数,如果一定要用参数请用全局变量
BlueDeepOcean 2006-07-07
  • 打赏
  • 举报
回复
应该是的。
Joininthefun 2006-07-07
  • 打赏
  • 举报
回复
to:weixing979(★★★闪电侠★★★)
我的函数带有参数如CopyRect(TRect,*TCanvas,TRect),调用时是Synchronize(CopyRect(TRect,*TCanvas,TRect))吗?;

13,826

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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