父窗口MainForm有很多子窗口,对父窗口上的一个菜单,在它的时间处理函数中
先找出当前活动子窗口:MapForm := TMainForm(ActiveMDIChild);
   然后想使用该子窗口上的某个控件,如DBGrid1,对该DBGrid上的数据进行处理,
用MapForm.DBGrid. ...不行,应该怎么做呢?

解决方案 »

  1.   

    我做了如下的测试: 都不行procedure TForm1.N1Click(Sender: TObject);
    begin
      if  ActiveMDIChild.FindComponent('edit1') <> nil then//找活动子窗口edit1控件
      begin
        showMessage('yes');   //找到了!
        TButton (ActiveMDIChild.FindComponent('edit1')).Caption := 'aaaaa';
      end;                    //caption修改不成功
    end;可以弹出对话框yes,  可是edit1的caption改不过来。
      

  2.   

    我做了如下的测试: 都不行procedure TForm1.N1Click(Sender: TObject);
    begin
      if  ActiveMDIChild.FindComponent('edit1') <> nil then//找活动子窗口edit1控件
      begin
        showMessage('yes');   //找到了!
        TEdit (ActiveMDIChild.FindComponent('edit1')).Caption := 'aaaaa';
      end;                    //caption修改不成功
    end;可以弹出对话框yes,  可是edit1的caption改不过来。
      

  3.   

    edit1是什么类型啊??你确定有EDIT1这个控件吗?