BCB代码:
void __fastcall TMainForm::IconImageMouseMove(TObject *Sender,
TShiftState Shift, int X, int Y)
{
if(Flag){
char temp[255],temp1[255];
TPoint *NowPoint = new TPoint(0,0); GetCursorPos(NowPoint); //取得光标位置
MainWnd = WindowFromPoint(*NowPoint); //取得窗口句柄
if(GetClassName(MainWnd,temp,sizeof(temp)) > 0){ //获得类名
StatusBar->SimpleText = "";
StatusBar->SimpleText = StatusBar->SimpleText + "类名:" + temp;
GetWindowText(MainWnd,temp1,sizeof(temp1));
StatusBar->SimpleText = StatusBar->SimpleText + "文字:" + temp1;
if(!(AnsiString(temp)).AnsiCompare(AnsiString("TEdit"))){//是编辑框
if(((GetWindowLong(MainWnd,GWL_STYLE)&ES_PASSWORD)!=0)&&Flag){//有密码风格
(long)OldProc = GetWindowLong(MainWnd,GWL_WNDPROC);
SetWindowLong(MainWnd,GWL_WNDPROC,long(NewProc));
Flag = false;
}
}
}
delete NowPoint;
}
}
void __fastcall TMainForm::IconImageMouseMove(TObject *Sender,
TShiftState Shift, int X, int Y)
{
if(Flag){
char temp[255],temp1[255];
TPoint *NowPoint = new TPoint(0,0); GetCursorPos(NowPoint); //取得光标位置
MainWnd = WindowFromPoint(*NowPoint); //取得窗口句柄
if(GetClassName(MainWnd,temp,sizeof(temp)) > 0){ //获得类名
StatusBar->SimpleText = "";
StatusBar->SimpleText = StatusBar->SimpleText + "类名:" + temp;
GetWindowText(MainWnd,temp1,sizeof(temp1));
StatusBar->SimpleText = StatusBar->SimpleText + "文字:" + temp1;
if(!(AnsiString(temp)).AnsiCompare(AnsiString("TEdit"))){//是编辑框
if(((GetWindowLong(MainWnd,GWL_STYLE)&ES_PASSWORD)!=0)&&Flag){//有密码风格
(long)OldProc = GetWindowLong(MainWnd,GWL_WNDPROC);
SetWindowLong(MainWnd,GWL_WNDPROC,long(NewProc));
Flag = false;
}
}
}
delete NowPoint;
}
}
if(((GetWindowLong(MainWnd,GWL_STYLE)&ES_PASSWORD)!=0)&&Flag){//有密码风格
(long)OldProc = GetWindowLong(MainWnd,GWL_WNDPROC);
SetWindowLong(MainWnd,GWL_WNDPROC,long(NewProc));
有错误!