?
zh en
20px - +
wrap
cursor
>
<
..
发信人: shipping (小平~~~~繁华落尽), 信区: ANSI 标 题: menu.ini背景前景的重叠 发信站: 日月光华 (2002年06月03日05:20:46 星期一), 站内信件 现在要介绍一些更深层次的东西: 下面是menu的ansi制作的困难点---背景和前景的重叠问题. 我发现系统好像只是很简单的把背景和前景的menu ansi代码重叠到一起然后 解释, 这样, 代码本身在屏幕上的位置也就要考虑不可以互相影响. 上面这一点可以解释为什么我们的菜单选项经过多次调整还是全部放在了左边 而且几乎所有的bbs的菜单都是在左边(如果有稍微复杂的背景的话)----因为菜单 摆在右边的话几乎不可避免地要跟背景左边的代码重叠产生错误(实际上情况比这个 还要复杂一些) . 菜单在左边 看板在右边确实不会发生任何问题 而一旦菜单的左边有看板(or一部分看板),就不能不考虑看板的代码长度问题, 一般稍微多一点着色,代码都会比较长(只要超过了菜单最左边的字符的位置,就算长 ), 协调的方法两种:要么压缩代码,(优化代码or取消部分上色),要么 菜单右移。 有时候会出现光标和菜单选项有距离的问题,这个东西很奇怪,现在还不清楚问什么 会出现, 现象如下所示: > E) 分类讨论区 有时候也可能 E) 分类讨论区 > 实际上>这个东西应该在紧靠E)的地方。 部分解决的方法如下: 如果光标在在菜单右边,就增加菜单的补偿位移(左边有了ansi控制符号之后, 右边的菜单会相应的向左边偏移若干,为了补偿这个偏移量,在菜单项的前面就添加 了相同的空格,我把这个叫做补偿位移)。 如果光标在菜单的右边,就增加相应冗余ansi控制符号,这样可以让菜单向左补偿 达到正确位置。(这个的典型案例请看复旦泉工具箱菜单) 当然,上面说到的实际上是非常耗费功夫的操作,因此把菜单项安排在背景的左边是 很讨巧的选择。 -- //ハミ へ へ 大家好我是阿饼,右边那个是免冠近照,请点击放大 C--●-●-O ※ 来源:·日月光华 bbs.fudan.edu.cn·[FROM: 10.83.0.81]