我的TTabSheet
上的每个TPageControl
上都有一个TToolBar
。每个工具栏都有一个TToolButton
,应该响应相同的键盘快捷键。如何提供热键,以便为当前页面调用右键?
在第一个选项卡上,Ctrl + T应该使某些事情发生,但是切换到第二个选项卡时,Ctrl + T应该使其他事情发生。
显示或隐藏选项卡时,这是时候在TActionList.State
和asNormal
之间切换asSuspended
吗?
最佳答案
如果只想让Ctrl + T在TabSheets
上的活动PageControl
之间切换,则创建一个具有Ctrl + T快捷键的Action,然后根据需要在页面之间切换:
procedure TForm1.actNextPageExecute(Sender: TObject)
var
nextPageIndex: Integer;
begin
nextPageIndex := PageControl1.ActivePageIndex+1;
if (nextPageIndex > PageControl1.Pages.Count-1) then
nextPageIndex := 0;
PageControl1.ActivePageIndex := nextPageIndex;
end;