如何判断外部程序编辑框的状态?如:Enabled是否为True,ReadOnly是否为True

解决方案 »

  1.   

    var
      h,e:thandle;
      s:dword;
    begin
      h:=FindWindow(nil,'DForm');  //DForm为外部程序标题
      if h=0 then
      begin
         ShowMessage('程序没找到!');
         exit;
      end;
      e:=FindWindowEx(h,0,nil,'Edit1');
      if e=0 then
      begin
         ShowMessage('编辑框Edit1没找到!');
         exit;
      end;
      if (IsWindowEnabled(e)) then
        ShowMessage('Edit1 Enabled!')
        else
        ShowMessage('Edit1 Disabled!');  s:=GetWindowLong(e,GWL_STYLE);
      s:=s and ES_READONLY;
      if s=ES_READONLY then
        ShowMessage('Edit1 ReadOnly!')
        else
            ShowMessage('Edit1 ReadWrite!')end;