问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于宏的问题

发布网友 发布时间:2022-04-27 12:13

我来回答

3个回答

热心网友 时间:2022-04-12 14:34

什么是宏
到底什么是宏呢? 我们把那些能自动执行某种操作的命令统称为“宏”。

宏也是一种操作命令,它和菜单操作命令都是一样的,只是它们对数据库施加作用的时间有所不同,作用时的条件也有所不同。菜单命令一般用在数据库的设计过程中,而宏命令则用在数据库的执行过程中。菜单命令必须由使用者来施加这个操作,而宏命令则可以在数据库中自动执行。

在ACCESS中,一共有五十三种基本宏操作,这些基本操作还可以组合成很多其他的“宏组”操作。在使用中,我们很少单独使用这个或那个基本宏命令,常常是将这些命令排成一组,按照顺序执行,以完成一种特定任务。这些命令可以通过窗体中控件的某个事件操作来实现,或在数据库的运行过程中自动来实现。

事件操作即像“单击”按钮、“双击”列表选项这些行为都是对控件的事件操作。所以我们常常会听到别人说“单击‘某某’按钮执行‘某某宏命令’”,就是这个意思。

为什么要用宏
先看个例子,有这样一个窗体,上面有一个数据表。现在在这个数据表中添加一个功能,用一个文本框输入要查询的内容,而用一个“查询”按钮来完成查询的工作,并将查询后的数据打印在报表上。

在窗体那一课里讲的命令按钮向导就能实现这个功能,但对于每个控件来说,要实现相应的功能光凭借向导是远远不够的。

要让这些控件实现一定的功用,在ACCESS中有四种办法。当然最简单的就是使用控件向导了,除此之外还有“宏”、“VBA”和“SQL语言”,使用这些方法可以使控件完成几乎所有的数据库操作。而这其中,向导最简单,但实现的功能有限,而宏虽然只有53种基本操作,但可以组合成很多种宏组命令,这样就能实现很多ACCESS中有关窗体、报表、查询的功能,使用起来也非常方便。而VBA和SQL语言相对起来对用户的要求也要高一些,当然VBA和SQL语言可以实现的功能也更加全面,自主性也更强,但它们都要写程序。对于很多普通的用户,他们不要求会得太多,只要能完成手上的工作就可以了,所以这时使用宏就是他们最好的选择了。

使用宏非常方便,不需要记住各种语法,也不需要编程,只需利用几个简单宏操作就可以对数据库完成一系列的操作,中间过程完全是自动的。

宏命令完全入门手册

一:基础教程

1.什么是宏命令?
玩过EQ的都知道一点宏的知识,比如组队时用来告诉队友你的行动,告诉目标等。最简单的比如puller 常用的: /v %t过来了,大家集中火力。 法师常用的: /v 我要催眠%t,大家不要打醒他 这些宏个性鲜明,是EQ的一大乐趣之一。

然而EQ毕竟是N年前的游戏,宏也比较简单,和它比起来。WOW的宏就复杂和强大的多了。它的函数就有上千种,如果都掌握,能实现许多匪夷所思的功能。

一个宏可以完成一个相对比较复杂的命令.比如战斗中发布命令,如果打字当然不算麻烦,但在战斗中却很要命.浪费了时间和生命.一个简单的宏便可以用一个键来完成这一切.

2.宏命令的设置流程:
首先,回车,再敲/MACRO。看见了吧?会弹出一个窗口,上面有New(新建宏命令)和Complete(完成宏命令)两个按键。点New,又会弹出一个窗口,哇,花花绿绿的,里面包括了WOW几乎所有的技能图标,随你喜欢,随便选一个!它就是你设置的宏命令的图标了,给它取个名字吧!方便你用的时候好找。然后回到第一个窗口,在它上面有一个输入菜单(别告诉我找不到…它可是占了这个窗口的一半多…)在里面输入特定的内容,然后点Complete。接下来你要做的就是把这个代表你宏命令的图标用鼠标左键拉到快捷栏里,想怎么用就怎么用…

3.下面就是怎样设置宏的内容了,简单的设置大家可以看我们网站上'基础'篇的宏介绍.

相信很多人都知道WOW中的斜杠'/'和表情命令.宏可以将这些命令按照自己对条件的设置串联起来,比如:/Kneel是让你跪下来的动作而/say就是最基础的对话动作
我们现在用一个宏把他们串起来:

第一行内容:“/Kneel”
第二行内容:“/say 如果你不嫁给我,那么我就一辈子不起来…” ”
这样你的人物就会先下跪再说:'如果你不嫁给我,那么我就一辈子不起来…'

宏可以应用所有WOW中已经定义了的斜杠'/'和表情命令,更要命的是,宏甚至可以应用人物的魔法和技能,

只需要在宏的定义过程中应用'/cast'命令,下面是已知的一些常用命令:

/Assist 这是个援助进攻的命令。当你的队伍同时面对几个敌人时,只要点击自己的队友(一般是队伍中的战士),然后使用这个命令,你的目标就会变成战士所选中的目标。大家集中火力消灭一个起!

/Cast 这是个使用技能的命令。当你在宏命令里输入/Cast 技能名(技能等级)或者只要按住Shift同时用鼠标点击一下你想要输入的技能的图标。例如当你是一个战士,想制作一个使用战斗怒吼的宏时,你可以输入/Cast Battle Shout(Rank 1)或者是直接按住Shift点击Battle Shout这个技能的图标。当然你可以在一个宏的不同行上输入几个技能,那么当你使用这个宏时,几个技能就会一起释放出来,再用不着你像章鱼一样同时按下几个键了 。

%t 这个符号也许会经常出现在你的宏命令里,它是一个代码,代表你当前所选中的人名。例如,你在宏里写下这么一句。(注意:后面要加一空格。) “/g %t ,今天天气真好,有没兴趣和我一起上山采蘑菇…”
如果你点中一位名叫苯笨的玩家,那么当你按下这个宏时,你就会说:“笨笨,今天天气真好,有没兴趣和我一起上山采蘑菇…”

/Target 这是一个自动选择目标的命令,你可以在宏里输入/Target (xxx),那么当你按下这个宏时,你将自动选定这个叫xxx的目标。

/in 这是一个延时命令,时间以秒为单位.同时它不支持攻击指令.格式:/in 3 dance 三秒后跳舞,如/in 3 dance,就是在3秒后跳舞,
/say start!
/in 3 say 3s later
/in 6 say 6s later

二:进阶教程

一些有用的 Macro

1。允许你在窗口和全屏状态之间切换

/script SetCVar('gxWindow', 1 - GetCVar('gxWindow'));

/console gxRestart

2。对于法师,必须要有的:将“X”换为你目前的变形术等级(下同);用它替换掉变形术技能。当你在队伍之外时使用它会得到“你不在队伍中。”的信息,但在队伍中的时候其它同伴会了解到你将释放的变形术目标。

/p Sheeping >>> %t <<<
/cast Polymorph (Rank X)

3。作为一个术士,这是在队伍中使用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击,跟着一个虚弱诅咒。

/assist 队伍中的拖怪手或者坦克的名字
/script PetAttack();
/cast Curse of Weakness (Rank X)

4。从背包和袋子里切换身上的武器

/script if ( not CursorHasItem() ) then PickupContainerItem(, );

PickupInventoryItem( ); end

bag# - 使用哪一个袋子的物品(0、1、2、3、4。0是背包)

slot# - 袋子里的位置(从0至左上)

equip# - 16 是主要武器, 17 是副武器

5。这个宏治疗队伍里你指定的人,如果你不在队伍中它会治疗你自己。然后会自动将目标切换回你最后一个敌人。它同时还会使用队聊提醒队友你会治疗哪一个人。

/script if (UnitName('target') ~=nil and UnitIsFriend('player','target')) then

CastSpellByName('Heal(Rank X)') SendChatMessage('Incoming Heal to %T', 'Party') else

TargetUnit('player') CastSpellByName('Heal(Rank X)') TargetLastEnemy(); end

6。加速任务显示速度

/script QUEST_DEscriptION_GRADIENT_CPS = 600000
/script RegisterForSave('QUEST_DEscriptION_GRADIENT_CPS')
/script DEFAULT_CHAT_FRAME:AddMessage('quest text will scroll faster now');

7。消除等待接受任务的时间

/script AcceptQuest()

8。这个宏可以在路上自动护送玩家做任务。

/assist [player name]
/cast 法术(Rank X)
/target [player name]
/follow [player name]

9。切换主副武器,详情看第四条

/script PickupInventoryItem(16); PickupInventoryItem(17);

10。在没有目标或者目标是敌人的时候给自己加增益魔法或治疗。

CastSpellByName('Spell Name(Rank X)');

if ((SpellIsTargeting()) and (not UnitIsFriend('player','target')))

then

SpellTargetUnit('player');

end;

TargetLastEnemy();

11。切换双手武器与单手+盾或者双手挥舞武器

/script PickupInventoryItem(17);if(CursorHasItem()) then PickupContainerItem

(4,2);PickupContainerItem(4,1);PickupInventoryItem(16);else PickupContainerItem

(4,1);PickupInventoryItem(16);PickupContainerItem(4,2);PickupInventoryItem(17);end

12。设定“真实鼠标视野”

/script CameraOrSelectOrMoveStart(arg1);

想取消就再次输入。

13。切换近程技能栏和远程技能栏

/script CURRENT_ACTIONBAR_PAGE = 2;
/script ChangeActionBarPage();
/cast aspectofmon key (just use the left click)

/script CURRENT_ACTIONBAR_PAGE = 1;
/script ChangeActionBarPage();
/cast aspectofhawk (just use the left click)
14。牧师对队友的一键加血,比如一号键给第一队友加血,二号键给第二队友加血,免除了还要鼠标确

定目标的操作。依次类推,从第一个人到最后一个

给队友1加血:
/script TargetUnit(GetPartyMember(1))
CastSpellByName(Heal(Rank X)) TargetLastEnemy()
给队友2加血:
/script TargetUnit(GetPartyMember(2)) CastSpellByName(Heal(Rank X)) TargetLastEnemy()

给队友3加血:
/script TargetUnit(GetPartyMember(3)) CastSpellByName(Heal(Rank X)) TargetLastEnemy()

15。一键解决喂养宠物:这个宏会从最左边的袋子里的第一个位置拿出食物喂养宠物,如果所在的位置

没有食物,它会自动打开袋子。

/script if (not PlayerFrame.inCombat) then if (not GetContainerItemLink(4, 1)) then

OpenBag(4); else CastSpellByName('Feed Pet'); PickupContainerItem(4, 1); end end

16。术士宏

1)如果目标生命大于20,释放抽取生命法术,否则使用灵魂抽取。
/script if (UnitHealth('target')>20) then CastSpellByName('Drain Life(Rank X)') else

CastSpellByName('Drain Soul(Rank 2)') end;

2)虚弱诅咒版本
/script if (UnitMana('target')>0) then CastSpellByName('Curse of Tongues(Rank X)') else

CastSpellByName('Curse of Weakness(Rank X)') end;

17.先治疗自己,然后自动选中上次的敌人
/target Pugar //选择自己,假设自己的名字是Pugar
/cast Lesser Heal (Rank 1) //施展次级治疗rank1
/script TargetLastEnemy(); //重新选择刚刚选择的敌人
/script AttackTarget(); //攻击,等同于右键点击敌人

18.对于一个术士很有用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击

,跟着一个虚弱诅咒。
/assist 队伍中的拖怪手或者坦克的名字
/script PetAttack();
/cast Curse of Weakness (Rank X)

19.等治疗完之后提醒别人注意下自己有可能被怪打,不加延时的话,就没这个效果了。
/p healing %T, need 3s, don't run away
/cast heal (rank 1)
/in 4 p cured %T 300HP,please notice the enemies turn on me^_^

20.在路上自动护送朋友做任务。

/assist [player name]
/cast 法术(Rank X)
/target [player name]
/follow [player name]
三:高级教程

WOW的宏函数库可以去这两个地方查:

http://www.cosmosui.org/texts/BlizzardCommands.xml

http://www.wowwiki.com/index.php/World_of_Warcraft_API

函数的使用比较简单,学习过编程的都比较容易上手,基本的用法是在函数前加/script 来使用。比如
/script CURRENT_ACTIONBAR_PAGE = X;
/script ChangeActionBarPage();
就是将你的快捷栏翻到第X页。

函数库中有许多函数都是非常有用和方便的,比如一次打开所有包包:

/script OpenAllBags();

配合关闭包包的函数,一次关闭所有包的宏也可以实现:

/script CloseBag(0);
/script CloseBag(1);
/script CloseBag(2);
/script CloseBag(3);
/script CloseBag(4);

怎么样,下次你卖东西的时候不会一个个开包关包了吧?

使用函数还不是最恐怖的,恐怖的是WOW的宏是可以用条件判断的,看下面这两个:
/script if ( GetComboPoints() >= 3 ) then CastSpellByName('Rip(Rank 2)'); else if (

UnitMana('player') >= 40 ) then CastSpellByName('Rake(Rank 1)'); end end

据说这个包含if,then的宏可以让盗贼实现自动根据combo点数来使用技能(未测试),其中还使用了角

色MANA值的调用,恐怖吧?还有这个查找spell的宏:
function GetSpellIdByItsName(myWantedSpell, myWantedRank)
local spellId = 1;
local spellBook = 'spell';
local spellName, rankName;
spellName, rankName = GetSpellName(spellId, spellBook);
while (spellName ) do
if ( ( spellName == myWantedSpell ) and ( ( not myWantedRank ) or ( rankName = myWantedRank

) ) ) then return spellId; end
spellName, rankName = GetSpellName(spellId, spellBook);
end
return -1;
end

里面可以自己定义function,还使用了while,do这样的循环,是不是让你想到了N种应用的可能呢?

遗憾的是,目前官方似乎没有提供延时的宏,所以在战斗中使用多种有延时的技能是无法实现的(无延时的技能可以实现同时使用),类似换其他武器-使用技能或法术-换回武器这样的功能也无法实现,

(所谓用宏实现剑盾战士换双手武器MS再换回来是行不通的),不过使用COSMOS的朋友可以用/in 来实现非战斗指令的延时,比如
/in 3 say hi 就会在3秒后说句hi。

/in 6 /script MoveForwardStart(arg1);
就会在6秒后向前跑。

虽然法术和技能无法用/in指令来延时,但这样已经很强大了,比如,你可以编出各种运动的宏,如兜后,转身等。PVP时估计是必不可少的。

下面是一个玩家写的双手武器战士自动逃跑的宏:
/script UseContainerItem(0, 2);ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown

(12);ActionButtonUp(12);
/cast Thunder Clap(Rank 1);
/script TurnLeftStart(arg1);
/in 1 /script TurnLeftStop(arg1);ToggleAutoRun();

使用这个宏的条件:在大包包第二格放了回复药,快捷栏第11,12分别是一单手一盾的快捷方式。

使用这个宏后,角色自动喝回复药,装备上盾,使用Thunder Clap(这三个动作同时进行),向后转180度后开自动跑步键逃走。其中技能等可以根据需要自己改。怎么样,是不是很夸张啊,哈哈。

还有一些有用的宏:

切换装备,

双手切换单手并换第二个快捷栏,快捷栏第11,12分别是一单手一盾的快捷方式
/script ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown(12);ActionButtonUp(12);
/script CURRENT_ACTIONBAR_PAGE = 2;
/script ChangeActionBarPage();
单手切换双手并换回第一快捷栏,快捷栏12是一双手武器快捷方式
/script ActionButtonDown(12);ActionButtonUp(12);
/script CURRENT_ACTIONBAR_PAGE = 1;
/script ChangeActionBarPage();

热心网友 时间:2022-04-12 15:52

您好!

宏是预定义的一些列操作,旨在简化重复的工作。
比如,对于每个工作表都需要设置相同的页眉,则可以通过录制宏来记录下这些操作,然后在任何需要设置这个页眉的表上执行宏即可完成设置。

热心网友 时间:2022-04-12 17:27

TS
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
摩托证是什么证 什么是摩托驾驶证 土豆到底是个啥? 怎样提取碘水中的碘单质 怎么从碘的四氯化碳溶液中提取单质碘? 纪委书记在哪个app播 昆明公积金提取多久到 g1840处理器怎么升级 赛扬G1840能配什么主板 风管机不出风怎么处理 买汽车那款经济实惠,性价比最高 去幼儿园应聘应该具备什么条件 关于access 宏 小年轻十万块预算买什么车?来看看这三款性价比超高车型 在access中如何用宏使得打开数据库时显示的默认窗体??重点是用宏!!谢 ... 关于ACCESS宏 哪家车企最先让老百姓开上平价车? access中vba运行程序还要加载宏 幼儿园面试简历的专业技能怎么写 access中vba运行程序还要加载宏,什么鬼!!!??? 十万左右的车哪款好?哪款性价比高? access有关宏的菜鸟问题 ACCESS 中的 宏 是什么? 性价比高的车有哪些? 醪糟是酒酿吗? Access中模块和宏的区别,有具体,最好有列子 买什么车性价比最高?老百姓买的起的 请教高手关于Access数据宏的使用? 哪款平价国产小汽车的性价比高? 自制醪糟可以当酒曲再做醪糟吗 Access-如何创建宏 故宫旅游的攻略是什么 故宫旅游攻略讲解 元宵节故宫将在夜间开放,有哪些游览攻略? 介绍去故宫参观整个流程,时间及票价(是否支持学生证) 去北京故宫博物院怎样参观藏品 2021年故宫五一假期前3天门票已售罄,你知道哪些关于游玩故宫的攻略? 聪明的小明小品台词 要完整版的 小品聪明的小明台词 聪明的小明小品台词 聪明的小明小品台词张康2016 急求一个搞笑的小品剧本(2、3个人左右的,别超过5人),一定要是搞笑的!急!!!(简短点哦) 有没有7人的校园小品剧本(要有意义的)? 聪明的小明小品里喔嘛尼嘛尼贝贝哄的歌名 六一搞笑小品(四人女生) 文明礼仪小品剧本(搞笑版) 有关谎言或诚信的相声小品剧本 爆笑小品《开学了》,两位小学生回答问题,老师都快气吐血了。剧本。急需!!! 滑头鬼之孙的作者是谁 滑头鬼之孙讲的是什么故事 什么类型的