有人发现这个Bug没有?// stdactns.pasprocedure TSearchAction.Search(Sender: TObject);
begin
   if Assigned(FControl) then
      if not SearchEdit(FControl, TFindDialog(FDialog).FindText,
           TFindDialog(FDialog).Options,FFindFirst0 then
         ShowMessage();
   
   FControl:=nil; //Bug!这将导致查找对话框只能点击查找一次,再点击没反应,只能用FindNext
end;

解决方案 »

  1.   

    你用的delphi几?
    delphi7里面是这样的
    procedure TSearchAction.Search(Sender: TObject);
    begin
      // FControl gets set in ExecuteTarget
      if Assigned(FControl) then
        if not SearchEdit(FControl, TFindDialog(FDialog).FindText,
           TFindDialog(FDialog).Options, FFindFirst) then
          ShowMessage(Format(STextNotFound, [TFindDialog(FDialog).FindText]));
    end;
      

  2.   

    Delphi 6.0
    C++Builder 6.0
      

  3.   

    呵呵,可能是个bug,delphi7改了