?
zh en
20px - +
wrap
cursor
>
<
..
发信人: shipping (小平~~~~繁华落尽), 信区: ANSI 标 题: menu.ini扩展制作办法(完) 发信站: 日月光华 (2002年06月07日15:52:53 星期五), 站内信件 . 0 > BBS 系统--[站内] . 1 复旦大学-.[本校] . 2 光华公司--[勤助] . . ● 3 社团组织--[团体] . . 4 竞赛活动--[临时]. 5 谈天聊地--[感性] . . .: 6 游戏休闲--[休闲] 7 个人风采--[个人] : . . B 所有讨论区 ALL . N 阅读新文章 NEW █ E 回到主选单 ______________________________________________________________________________ 上面是复旦泉分类讨论区的界面。有没有发现一点不同的地方:菜单项和背景融为一体了 。这就是我下面要说到的扩展menu用法。 也许要问了,如果不用所谓扩展menu方法就不能做到这一点么——我告诉你,确实不能。 不错,菜单项里面显示标签可以加ansi控制符使得显示出彩色的菜单来(复旦泉主菜单) 但是这样因为ansi代码本身占用了空间,背景在这个位置就不可能有代码存在,用绝对 定位也不可以——这样的直接后果就是:菜单和背景之间必须有一定距离是空白而不可能 是连在一起的(参看复旦泉主菜单和惠州明月湾主菜单) 介绍扩展menu方法首先要说菜单项语句的精确涵义:看语句 !M_EGROUP 10, 5, 0, "EGroup", "E) 分类讨论区" 系统所作的事情实际上是将光标定位到(10,5)位置,从这里的后一个位置显示“E) 分 类讨论区”并且在实际的界面过程中在这个(10,5)的位置会有一个">"作为选择标志。 因此,当这里的“E) 分类讨论区”字符串为空时,系统仍然要占用两个半角字符位置, 其中一个用来显示>,另一个是预留的空格。 可能大家看到这里已经猜到了所谓的扩展menu方法就是将"E) 分类讨论区"之类菜单项全部 置为空串,而将这几个字符固化在背景里面——这就很容易解释为什么上面那个范例的菜 单和背景为什么能够融为一体——因为他们本就是一体,都在背景里面! 而菜单块实际 上除了那个活动的>什么都没有显示。 这个方法的好处,就是管理员可以专心制作背景而不需要过多考虑菜单和背景的配合问题 。当然,即便如此,菜单和背景之间仍然会有冲突——冲突就在那个>的位置。这个位置和 此之后那个位置都必须在背景当中空出来,否则就会有明显错误。还有在>左侧添加ansi 控制符的时候也必须很小心,因为一旦ansi控制符跟>重叠, ansi的控制效果就没有了。 不管怎样, 这样一个小小诀窍确实大大扩展了menu的制作空间。并且我相信,当你掌握 这种方法之后, 看当今所有Firebird系统下的BBS界面, 都能一眼看穿其制作方法。 Now,你已经掌握了menu制作的基本上全部要点, 剩下的就是实践,和创意。——这也是 为什么要求menu制作人员需要相当的Ansi制作功底——的确可以锦上添花。 Enjoy it. shipping 2002.6.7@Fudan -- //ハミ へ へ 大家好我是阿饼,右边那个是免冠近照,请点击放大 C--●-●-O ※ 来源:·日月光华 bbs.fudan.edu.cn·[FROM: 10.83.0.81]