线程中控制进度条!
在复制文件的时候,如果不用多线程的话,主窗体在复制的过程中就无法移动什么的,请问创建线程显示进度。
请给出具体代码让我参考下,刚刚涉及线程编程,不懂的很多!请高手指教!
[解决办法]
进度条对话框放在主线程中,传进度条窗口句柄至工作线程中,然后,在工作线程中更新。
[解决办法]
发消息给主线程,让主线程刷新进度条。
[解决办法]
把需要处理进度条窗口句柄传给线程,线程往该窗口句柄发送处理进度消息,在进度条窗口处理线程发送的Windows消息即可。
thread
const
WM_DEAL_PROCESS = WM_USER+1;
PostMessage(hProcessForm,WM_DEAL_PROCESS,0,进度值);
...
进度条窗口
private
procedure OnDealProcess(var Msg:TMessage); Message WM_DEAL_PROCESS;
...
procedure TFmDealProcess.OnDealProcess(var Msg:TMessage);
begin
Progressbar.position = msg.LParam;
end;