type t_shortcut_keys_view=class(tdcreateform) uses tslvcl; panel1:tpanel; fokbtn:tbtn; shortcutview:tlistview; function Create(AOwner);override; //构造 begin inherited; shortcutview.AppendItems(init_shortcut_keys()); end function shortcut_keys_view_close(o;e); begin e.skip := true; Visible := false; end function fokbtn_clk(o;e); begin Visible := false; end function Recycling();override; //回收变量 begin inherited; ci := self.classinfo(); //将成员变量赋值为nil避免循环引用 for i,v in ci["members"] do begin if v["const"] then continue; if v["static"] then continue; invoke(self,v["name"],nil); end end function init_shortcut_keys(); begin return array(("ctrl+o","打开"), ("ctrl+N","新建"), ("ctrl+s","保存"), ("ctrl+F","查找窗口"), ("ctrl+R","替换窗口"), ("ctrl+a","全选"), ("ctrl+c","拷贝选择"), ("ctrl+D","复制被插入当前行"), ("ctrl+v","粘贴"), ("ctrl+x","剪切选择"), ("ctrl+G","定位到行"), ("ctrl+L|Y", "删除当前行"), ("tab | shift+tab","多行选中时缩进"), ("ctrl+/","注释当前选择"), ("ctrl+\\","取消当前注释"), ("ctrl+U","反撤销"), ("ctrl+z","撤销"), ("ctrl+tab","切换标签"), ("ctrl+J","打开tsl函数查找面板"), ("F2","跳转到下一个断点行"), ("F5","添加删除断点"), ("Alt+F5","将选中字符串转换为大写"), ("ctl+F5","将选中字符串转换为小写"), ("F3","正向搜索先前搜索的字符"), ("ctrl+F3","反向搜索先前搜索的字符"), ("ctrl+tab","切换标签页"), ("F9","执行当前页的代码"), ("ctrl+F9","打开执行代码编辑器"), ("F7","显示隐藏日志窗口"), ("F1","对于tsl语言查找当前光标所在位置的帮助"), ("alt+m","弹出tsl代码地图"));; end end