如何实现LABEL控件对SHAPE控件的遮挡?

解决方案 »

  1.   

    不太明白你的意思,LABEL和SHAPE控件的ZOrder处于同一层,有什么困难吗?
    将lable的长、宽设得比SHAPE稍大一些,使二者位置基本重合
    然后:
    Label1.ZOrder 0就可以了。好好看看下面的说明:
    ZOrder 的迷思?ZOrder 拆开以后就是 Z 及 Order,其意义说明如下:
    Z:这里是指三度空间中的 Z 座标轴 (注一),而不是指英文字母的第 26 个字母。
    Order:排列顺序。
    所以 ZOrder 就是指在 Z 座标轴上的排列顺序!ZOrder 语法如下:object.ZOrder position --------------------------------------------------------------------------------object 选择性引数。物件运算式,用来指定「适用于」清单中的物件。
    如果省略 object,则假设具有驻点的 Form 物件为 object。 
    Position 选择性引数。整数,用以指示 object 相对于同一 object 其它执行个体的位置。
    如果 position 为 0 或省略,则 object 放置在 z- 顺序前面 (上方)。
    如果 position 为 1,则 object 放置在 z- 顺序后面 (下方)。 --------------------------------------------------------------------------------在设计阶段选取快显功能表中的「移至顶层」或「移至底层」功能表指令,可以设定物件的 z- 顺序。ZOrder 用在不同的地方,有二种不同的意义:
    1、用于 MDIForm 中的 Child Form 时,指的是每一个 Child Form 的上下位置关系。
    2、用于每一个 Form 中的所有控制项时,指的是每一个控制项间的上下位置关系。 (注二)注一:一般我们的二度平面座标轴是指 X 座标轴 (东西向)及 Y 座标轴 (南北向),
       二个轴构成一个平面,再加上垂直的 Z 座标轴,就构成了三度立体空间了!
       所以 ZOrder 指的就是物件在垂直的 Z 座标轴上的上下位置关系。注二:虽然 ZOrder 指的是物件在垂直的 Z 座标轴上的上下位置关系。
       但是很多人搞不清楚,为什么他已经设定了 ZOrder 了,为什么在某些控制项中是无效的?   原因是对单一 Form 或 单一 Container 而言,在垂直的 Z 座标轴上又分成三个层次:
       最下一层:显示图形方法结果的绘图空间。
       中间一层:用来显示图形物件(例如 Image) 和 Label 控制项。
       上面一层:显示所有非图形控制项,例如 CommandButton、CheckBox 或 ListBox。
       而 ZOrder 只对单一层次内的控制项有效而已!   例如:您如果设定 Label 及 Image 的 ZOrder 是有效的,因为它们都在中间一层!
          您如果设定 Label 及 CommandButton 的 ZOrder 是无效的,因为它们在不同层!   最重要的是:不管 ZOrder 如何设定,
             在上面一层的物件永远会在中间一层的物件的上方!
             在中间一层的物件永远会在最下一层的物件的上方! 
      

  2.   

    __Label__
               |       |
               |       |
               |_______|在Form中象这样!
    rainstormmaster(rainstormmaster), 我在一个已经实现的例子未找到对ZOrder方法的
    设置,请问是否有别的方法?
    谢谢!
      

  3.   

    __Label__  
                           ¦        ¦  
                        ¦        ¦  
                        ¦_________¦