======================================================
注:本文源代码点此下载
======================================================
用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 + 箭头,再按箭头来选择单词
3 所有的操作都必须要用键盘来完成,有什么不明白的可以和我联系.联系方法 qiubole@163.com
dno := asource.dno
绿色通道:好文要顶关注我收藏该文与我联系
======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/