在一个form中,我们放了几个actionlist.用一个combobox记录了每个actionlist的中文名字,如
车辆管理,汽油管理,轮胎管理,人员管理. 他们对应的actionlist为:
车辆管理------carActionList,
汽油管理------OilActionList,
轮胎管理------SheetActionList,
人员管理------EmpActionList
比如我想通过用户在combobox中选择一个actionlist,然后我就遍历该actionlist中的所有action,并记录
for i:=0 to myActionList.ActionCount-1 do begin
if TAction(MainForm.myActionlist.Actions[i]).Enabled then
myEnable:='T'
else
myEnable:='F';
if TAction(MainForm.myActionlist.Actions[i]).Visible then
myVisible:='T'
else
myVisible:='F';
if Trim(Edit1.text)='' then
Exit
else
myRole_Name:=Trim(Edit1.text);
if Trim(ComboBox1.Text)='' then
Exit
else
myApplication_Name:=Trim(ComboBox1.Text);
//if myDM.RoleRightCDS.CanModify then
//myDM.RoleRightCDS.Edit;
myDM.RoleRightCDS.AppendRecord([myRole_Name, myApplication_Name,
Taction(MainForm.myActionlist.actions[i]).Caption,myEnable,myVisible]);
现在关键是如何实现:用户通过选择名称,我就能找到该actionlist,并遍历它,谢谢!!!
车辆管理,汽油管理,轮胎管理,人员管理. 他们对应的actionlist为:
车辆管理------carActionList,
汽油管理------OilActionList,
轮胎管理------SheetActionList,
人员管理------EmpActionList
比如我想通过用户在combobox中选择一个actionlist,然后我就遍历该actionlist中的所有action,并记录
for i:=0 to myActionList.ActionCount-1 do begin
if TAction(MainForm.myActionlist.Actions[i]).Enabled then
myEnable:='T'
else
myEnable:='F';
if TAction(MainForm.myActionlist.Actions[i]).Visible then
myVisible:='T'
else
myVisible:='F';
if Trim(Edit1.text)='' then
Exit
else
myRole_Name:=Trim(Edit1.text);
if Trim(ComboBox1.Text)='' then
Exit
else
myApplication_Name:=Trim(ComboBox1.Text);
//if myDM.RoleRightCDS.CanModify then
//myDM.RoleRightCDS.Edit;
myDM.RoleRightCDS.AppendRecord([myRole_Name, myApplication_Name,
Taction(MainForm.myActionlist.actions[i]).Caption,myEnable,myVisible]);
现在关键是如何实现:用户通过选择名称,我就能找到该actionlist,并遍历它,谢谢!!!
解决方案 »
- 有否google earth控件?
- 谁能给我发些Delphi的新手源码
- 一小段代码,兄弟们帮忙优化下。
- edit1中比如有数字 '1234567 '如何让前三位(123)只读,后面的可以更改????
- 请教:是否我少uses了一个什么东东?关于OnDrawDataCell.
- 问:用什么函数方法之类的可以将String变量的值复制到剪贴板上?
- 能否实现在按保存按钮后,将Dbgrid表中新增加的记录的部分字段添加到另一个表中?
- Multi-Tier三层结构问题,急急急!!!!
- 用DBGrid配Query组件,如何实现单击修改数据效果??
- 有对form中所有控件进行操作的方法吗?
- 这么一个小问题
- 在Delphi中怎么读取USB接口中的数据?
FindComponent(你选中的名称));
它返回一个TComponent对象,所以你还必须对其强制转换,才可以操作找到的这个控件:TActionList(FindComponent(comboBox.text)).属性/方法等