DELPHI中IDE宏录制小用
用DELPHI的宏可以做一些非常简便的工作, 它是记录键盘的动作,如果我们将一些有规律的动作,用宏来进行操作,就可以达到事半功倍的效果,前提是编写的代码风格比较整洁.
宏是以Ctrl + Shift + R开始, 也以Ctrl + Shift + R结束, 以Ctrl + Shift + P来播放.
开始录制宏后,可以在状态栏看到 'Recording'字样.
以下以Assign为例,来进行举例
如下,我们的类中有一大堆的变量
dno: string[20];
dworker: string[4];
ddate: TDateTime;
dtrade_s: string[10];
dtrade_e: string[10];
dmoney_sale: Real;
dMoney_last: Real;
dmoney_ss: Real;
dman: string[2]; //客层
dmoney_SK: Real; //收款
dMoney_ZL: Real; //找零
Money_Mode: Real; //现金支付金额
Ticket_Mode: Real; //购物券支付金额
Czk_Mode: Real; //储值卡支付金额
MZk_Mode: Real; //面值卡支付金额
Bank_Mode: Real; //银行卡支付金额
dCard_Zk: string[20]; //打折卡卡号
dCard_Hl: string[20]; //鸿利卡卡号
dsubshop: string[4];
dsalesman: string[4]; //营业员
我们想在Assign中,将它的值赋给一个ASource对象对应的值,如下.
例如:
procedure TMasterData.AssignValue(ASource: TMasterData);
begin
//想得到如下结果
dno := ASource.dno;
dworker := ASource.dworker;
ddate := ASource.ddate;
dtrade_s := ASource.dtrade_s;
dtrade_e := ASource.dtrade_e;
dmoney_sale := ASource.dmoney_sale;
dMoney_last := ASource.dMoney_last;
我们该怎么办呢,首先将声明复制下来,形成如下
procedure TMasterData.AssignValue(ASource: TMasterData);
begin
dno: string[20];
dworker: string[4];
ddate: TDateTime;
dtrade_s: string[10];
dtrade_e: string[10];
dmoney_sale: Real;
dMoney_last: Real;
....
这个时候,我们先将焦点放在 dno行的行首, 按Ctrl + Shift + R开始录制,然后按Ctrl+->箭头,光标会移到 dno这个单词的前台,再按Ctrl + Shift + ->,会选取dno: 这一小节,多了两个字符怎么办,按Shift + <-箭头两次,现在就完全选中了dno了,按Ctrl + C,复制, 接下后按->箭头,再按<-箭头 回到:前,再接下来,输入 := ASource. 这几个字母,再按Ctrl + V粘贴,现在就成了dno := ASource.dno: string[20]; 光标在第二个:前,我们再清除后面的字符,按Shift + End, 再按删除键,这样就完成了第一列,然后为了方便,我们将光标定位到第二行的行首, 向下箭上,再按Home键.
这就是我们所有的按键, 我们按Ctrl + shift + R结束录制,再按 Ctrl + Shift+ P 来播放吧,非常酷吧
如果非常熟悉 delphi的宏,那么我们可以做出非常多的美妙的事情来,如我们在MSSQL中经常有
update a set dnum = b.dnum 这一类的东西,完全可以用delphi的宏来完成.
录宏的要点,
1 一定要注意书写代码整洁的规律
2 多用ctrl + shift + ->箭头来选择单词
3 所有的操作都必须要用键盘来完成,有什么不明白的可以和我联系.联系方法 qiubole@163.com
http://www.cnblogs.com/qiubole/articles/116104.html
DELPHI中IDE宏录制小用的更多相关文章
- Delphi 提示在Delphi的IDE中,按Ctrl+Shift+G键可以为一个接口生成一个新的GUID。
对于Object Pascal语言来说,最近一段时间最有意义的改进就是从Delphi3开始支持接口(interface),接口定义了能够与一个对象进行交互操作的一组过程和函数.对一个接口进行定义包含两 ...
- IDEA Intellij中vim插件使用小技巧
在 IDEA Intellij小技巧和插件 一文中简单介绍了一下IdeaVim插件.在这里详细总结一下这个插件在日常编程中的一些常用小技巧.供有兴趣使用这个插件,但对Vim还不十分熟悉的朋友参考.当然 ...
- Delphi中编辑word
其他(28) //启动Word try wordapplication1.connect; except messagedlg('word may not be ins ...
- Delphi中停靠技术的实现
随着软件技术的不断进步,软件界面也越来越美观,操作也越来越方便.综观市面上比较专业的各种软件,我们会发现大部分都提供窗体停靠的功能,特别象工具软件,基本上都或多或少有停靠功能.自然,Delphi也支持 ...
- Delphi中的窗体创建与销毁
Delphi中的窗体,有模式窗体与非模式窗体两种.两种窗体的调用方式不同,模式窗体使用ShowModal显示,非模式窗体使用Show显示.当显示模式窗体的时候你是不能操作本程序的其他窗体的,你不能把焦 ...
- Delphi中的关键字与保留字
Delphi中的关键字与保留字 分类整理 Delphi 中的“关键字”和“保留字”,方便查询 感谢原作者的收集整理! 关键字和保留字的区别在于,关键字不推荐作标示符(编译器已经内置相关函数或者留给保留 ...
- office中通过宏添加快捷键
把“Microsoft 公式 3.0”作为一个按钮放在 2013中的快速访问工具栏的方法 在使用office办公软件的过程中,因为有的人还在使用office2003版本,所以在使用高版本的office ...
- Delphi中的异常处理
转载:http://www.cnblogs.com/doit8791/archive/2012/05/08/2489471.html 以前写Delphi程序一直不注意异常处理,对其异常处理的机制总是一 ...
- Delphi中的接口和抽象类
参考:http://blog.csdn.net/xinzheng_wang/article/details/6058643 接口:Interface Delphi中接口中的关键字Interface,但 ...
随机推荐
- 分享:PHP数组排序总结
本文内容:PHP二维数组排序,PHP数组排序总结. php数组排序是PHP学习中最基础也是最重要的一部分. 1.常规数组的排序 常规数组是指数组各元素均为字符串或数字,这与这样的数组,我们可以采用so ...
- 基于php下载文件的详解
本篇文章是对php下载文件进行了详细的分析介绍,需要的朋友参考下 php下载文件,比如txt文件. 出现的效果就是,弹出浏览器自带的下载框,出现另存为操作.有时候会出现内存溢出和超时的现象. 超时的话 ...
- python学习第二天第二部分
一.变量:用来记录状态 变量值得变化即状态的变化,程序运行的本质就是来处理一系列状态的变化 python中所有数据都是对象 对象的三个特性: 身份(内存地址):用id()获取 类型:决定了该对象可以保 ...
- MySQL 5.7.11 重置root密码
.修改/etc/my.conf,添加参数skip-grant-tables .重启mysql service mysqld stop service mysqld start .用root 直接登录 ...
- openerp - asterisk connector(转载)
原文:http://www.akretion.com/open-source-contributions/openerp-asterisk-voip-connector OpenERP - Aster ...
- Android Studio快速开发之道(各种语法糖)
现如今开发越来越追求效率和节奏,节省出时间做更多的事情,除了开发技术上的封装等,开发工具的使用技巧也是很重要的,今天就根据自己的经验来给大家介绍一下Android Studio快速开发之道. Post ...
- Linux nmon 监控工具使用
Linux 系统下监控指标及指标查看 一.工具介绍 Linux 系统下资源监控使用nmon 工具.它可以帮助在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新且并不会消耗大量的CPU ...
- boost安装
虽然很多Boost组件都只有头文件,不需要编译,但是有些Boost组件,如program_options.regex等还是需要编译生成库的.考虑到目前的程序需要用到program_options.re ...
- 阿里云mysql数据库恢复总结,mysql binlog日志解析
由于意外..阿里云mysql中有一张表被全部删除了,深吸三口气候,开始解决. 首先用凌晨的自动备份的,进行全量恢复,然后找binlog日志(见下文),查找从全量备份到数据删除之间的记录 这导致了一个问 ...
- (菜鸟要飞系列)三,基于Asp.Net MVC5的后台管理系统(用户的增删改查功能)
这些天被项目,考试整昏了头脑,没时间更新,我已经将这一部分全部做完了,现在把代码放上来,大家可以自己研究,有问题可以私聊,这里把图放上来 http://download.csdn.net/detail ...