全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1091
推到 Plurk!
推到 Facebook!

StackOverFlow

 
jorping
一般會員


發表:3
回覆:5
積分:1
註冊:2006-11-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-11-20 14:26:45 IP:220.112.xxx.xxx 訂閱
BCB中,我在重载Scroll的WndProc()时,
程序运行一段时间后,出现StackOverFlow的错误..
这是怎么回事 该如何解决:
Code如下:
TWndMethod OldSrcWndProc;
void __fastcall NewSrcWndProc(TMessage &Message);
TWndMethod OldDstWndProc;
void __fastcall NewDstWndProc(TMessage &Message);
//------------------------------------------------------------
__fastcall TForm9::TForm9(TComponent* Owner)
: TForm(Owner)
{
OldSrcWndProc=tntsrc->WindowProc;
tntsrc->WindowProc=NewSrcWndProc;
OldDstWndProc=tntdest->WindowProc;
tntdest->WindowProc=NewDstWndProc;
}
//-----------------------------------------------------
void __fastcall TForm9::NewSrcWndProc(TMessage &Message)
{
//unsigned int ff=Message.Msg;
OldSrcWndProc(Message);
//tntsrc->Perform(Message.Msg,Message.WParam,Message.LParam);
if(Message.Msg==WM_VSCROLL)
{
//ShowMessage("ddd ");
int ivPos1=GetScrollPos(tntsrc->Handle,SB_VERT);
int ivPos2=GetScrollPos(tntdest->Handle,SB_VERT);
if(ivPos1!=ivPos2)
{
tntdest->Perform(Message.Msg,Message.WParam,Message.LParam);
//tntdest->Perform(
}
}
if(Message.Msg==WM_HSCROLL)
{
int ihPos1=GetScrollPos(tntsrc->Handle,SB_HORZ);
int ihPos2=GetScrollPos(tntdest->Handle,SB_HORZ);
if(ihPos1!=ihPos2)
{
tntdest->Perform(Message.Msg,Message.WParam,Message.LParam);
}
}
}
//-----------------------------------------------------------------------------
void __fastcall TForm9::NewDstWndProc(TMessage &Message)
{
OldDstWndProc(Message);
//tntdest->Perform(Message.Msg,Message.WParam,Message.LParam);
if(Message.Msg==WM_VSCROLL)
{
int ivPos1=GetScrollPos(tntsrc->Handle,SB_VERT);
int ivPos2=GetScrollPos(tntdest->Handle,SB_VERT);
if(ivPos1!=ivPos2)
{
tntsrc->Perform(Message.Msg,Message.WParam,Message.LParam);
}
}
if(Message.Msg==WM_HSCROLL)
{
int ihPos1=GetScrollPos(tntsrc->Handle,SB_HORZ);
int ihPos2=GetScrollPos(tntdest->Handle,SB_HORZ);
if(ihPos1!=ihPos2)
{
tntsrc->Perform(Message.Msg,Message.WParam,Message.LParam);
}
}
}
//
------
Jordan.Jeng
系統時間:2024-11-25 2:21:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!