敬业的IT人 >> 编程开发 >> Delphi >> 获取其他进程中ListBox和ComboBox的内容

获取其他进程中ListBox和ComboBox的内容

敬业的IT人 互联网 佚名 2008-1-4 16:37:45
(*//标题:获取其他进程中ListBox和ComboBox的内容说明:Window2000 Delphi6调试通过设计:Zswang支持:wjhu111@21cn.com日期:2004-03-25//*)
function GetListBoxText(mHandle: THandle; mStrings: TStrings): Boolean;var  vItemCount: Integer;  I: Integer;  S: string;begin  Result := False;  if not Assigned(mStrings) then Exit;  mStrings.BeginUpdate;  try    mStrings.Clear;    vItemCount := SendMessage(mHandle, LB_GETCOUNT, 0, 0);    for I := 0 to vItemCount - 1 do begin      SetLength(S, SendMessage(mHandle, LB_GETTEXTLEN, I, 0));      SendMessage(mHandle, LB_GETTEXT, I, Integer(@S[1]));      mStrings.Add(S);    end;    SetLength(S, 0);  finally    mStrings.EndUpdate;  end;  Result := True;end; { GetListBoxText }
function GetComboBoxText(mHandle: THandle; mStrings: TStrings): Boolean;var  vItemCount: Integer;  I: Integer;  S: string;begin  Result := False;  if not Assigned(mStrings) then Exit;  mStrings.BeginUpdate;  try    mStrings.Clear;    vItemCount := SendMessage(mHandle, CB_GETCOUNT, 0, 0);    for I := 0 to vItemCount - 1 do begin      SetLength(S, SendMessage(mHandle, CB_GETLBTEXTLEN, I, 0));      SendMessage(mHandle, CB_GETLBTEXT, I, Integer(@S[1]));      mStrings.Add(S);    end;    SetLength(S, 0);  finally    mStrings.EndUpdate;  end;  Result := True;end; { GetComboBoxText }
//Exampleprocedure TForm1.FormCreate(Sender: TObject);begin  RegisterHotKey(Handle, 1, MOD_WIN, VK_F2);  RegisterHotKey(Handle, 2, MOD_WIN, VK_F3);end;
procedure TForm1.FormDestroy(Sender: TObject);begin  UnRegisterHotKey(Handle, 1);  UnRegisterHotKey(Handle, 2);end;
procedure TForm1.WMHOTKEY(var Msg: TWMHOTKEY);begin  case Msg.HotKey of    1:      GetListBoxText(        WindowFromPoint(Point(Mouse.CursorPos.X, Mouse.CursorPos.Y)),        MemoText.Lines);    2:      GetComboBoxText(        WindowFromPoint(Point(Mouse.CursorPos.X, Mouse.CursorPos.Y)),        MemoText.Lines);  end;end;
粤ICP备06119539号
Copyright CiscoSky.Org,Some Rights Reserved.
Email:me1228#tom.com