怎么动态删除Tbutton,找了好半天,都没有找到delete的方法!郁闷ing!

解决方案 »

  1.   

    怎么动态删除mxheader 上的Tmxbutton,不好意思。。有点受误!
      

  2.   

    双击,会出来一个选项..里面有Header Name,点这个列表会有Button Name的列表..在这里面删除.点击还可以修改这些Header Button 的属性.
      

  3.   

    你是说动态删除..这个要用这样的方式.
    mxOutLook.Headers[0].Buttons[0].Free;
      

  4.   

    mxOutLook.Headers[0].Buttons[0].Visible:=False;
    建议使用这种方式..因为删除的话.操作起来很麻烦.可能会出现访问溢出的情况.嘿嘿..给分吧.
      

  5.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      mxOutlookBarPro1.Header[0].DeleteButton(3);
      mxOutlookBarPro1.SetFocus;
    end;
    这样做才能删除。只写mxOutlookBarPro1.Header[0].DeleteButton(3);这一句确实是删除,但是从界面上看还存在,必须mxOutlookBarPro1再获取焦点后界面上才发生变化,所以要给它焦点。
      

  6.   

    呵呵,看来问题还是没说清楚啊,我知道有deletebutton的方法,现在就是我怎么获取selected的button的index。也就是怎么获取当前选中的mxbutton的相关信息。
    比如我实现功能:选中一个button,弹出菜单(有delete菜单项),删除该button。
    谢谢各位达人。。
      

  7.   

    首先要设置所有的mxOutlookBarPro1.Headers[n].AllowSelected:=True;
    mxOutlookBarPro1.ActiveHeaderIndex 当前活动的Header Index
    n:=mxOutlookBarPro1.ActiveHeaderIndex;
    mxOutlookBarPro1.Headers[n].SelectedIndex 当前活动的Header Index被选中的Button Index,如果返回-1,则表示第n个Header没有button被选中