在ActionManager中新增New Standard Action中的DataSet中的几个Action。
我想在运行时改变DataSetAction的DataSource,编写过程如下:
procedure TfrmMain.ButtonsDataSource(aDS:TDataSource);
begin
    DataSetInsert2.DataSource:=aDS;
    DataSetEdit2.DataSource:=aDS;
    DataSetDelete2.DataSource:=aDS;
    DataSetCancel2.DataSource:=aDS;
    DataSetPost2.DataSource:=aDS;
end;
调用:
1.  ButtonsDataSource(dsCompany);
2.  ButtonsDataSource(dsProduct);
第一次调用有效,第二次......后调用无效!!!
请问是啥原因哦?????
谢谢!!!!!!

解决方案 »

  1.   

    有,但我不是,随便看看,但阁下的题目好象不太清晰,可否将明白点,怪不得贴3次都没解决!再仔细描述一下好吗?估计与Action无关。
      

  2.   

    晕~~~老大,回答问题是要靠实践的啊~~
    我的问题也就是说~~
    DataSetAction不能动态的更换数据源吗?????
    如果能, 改怎样写呢?
      

  3.   

    如果能回答你的这个问题就叫做高手的话,那么csdn可以说人人都是高手!你就单单的给出那几句话,如何给你看?
    我知道你
    DataSet.Active的状态吗?
    ....----------------
    沉沦中..........
      

  4.   

    我的遭遇才叫做凄惨,只有三个人回复我的帖子,我不过就是问一下WMA文件格式而已
      

  5.   

    你用的是dataset的那个事件?
      

  6.   

    你的代码写错了,我的是可以的
    你是如何调用ButtonsDataSource(aDS:TDataSource)的
      

  7.   

    这么搞一下,哈哈
    procedure TForm1.Button1Click(Sender: TObject);
    var
      i:integer;
    begin
      DBGrid1.DataSource := DataSource2;
      for i := 0 to ActionManager1.ActionCount -1 do
        if ActionManager1.Actions[i].Category = 'Dataset' then
           ActionManager1.Actions[i].HandlesTarget(DataSource2);
    end;
    ActionManager还是很神奇的啊,大家研究研究
      

  8.   

    DataSetAction元件不需要程序设置DataSource,会自动指向当前操作(有焦点的数据控件)的DataSource
      

  9.   

    补充:
    前提是设计时DataSetAction的DataSet属性为空