主窗口中使用一个PageControl,使用时新建tabsheet,并将对应frame放置到新建tabsheet中.每个frame都有自带的actionlist及对应快捷键,当主窗口中的tabsheet大于两个时,actionlist对应的快捷键不是不起作用,就是调用其他过程,在不就是delphi提示内存错误.
现在想在每个tabsheet新建或激活时,主窗口的actionlist变为对应frame中的actionlist,求解!
现在想在每个tabsheet新建或激活时,主窗口的actionlist变为对应frame中的actionlist,求解!
具体该怎么做,我试过 form1.action:=form1.WORK_PC.ActivePage.Controls[0].FindComponent('actionlist1') AS Tactionlist;
系统提示: actionbasic 与 tactionlist 类型不同,大概就是这个意思
实在不行就改成MDI形式吧
或者单独赋值frame.action := actionlist.action[0];
主窗体是ActionList;frame也是ActionList 这2个就是同1东西啊,直接关联不行吗form1.ActionList:=FrameX.ActionList;
form1.ActionList.Actions[0]:=FrameX.ActionList.Actions[0];每个tabsheet中Frame名称会不同,可以用FindComponent或者tabsheet的Controls取得