• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            08年05月07日

            Posted on 2008-05-07 17:00 RichardHe 閱讀(280) 評論(0)  編輯 收藏 引用
            今天在參考WindowsLook.looknfeel自己寫了一個Button
            <?xml version="1.0" ?>
            <Falagard>
                <WidgetLook name="WindowsLook/MyButton">
             1 <ImagerySection name="normal">
             2             <FrameComponent>
             3                 <Area>
             4                     <Dim type="LeftEdge">
             5                         <AbsoluteDim value="0" />
             6                     </Dim>
             7                     <Dim type="TopEdge">
             8                         <AbsoluteDim value="0" />
             9                     </Dim>
            10                     <Dim type="RightEdge">
            11                         <UnifiedDim scale="1" type="RightEdge" />
            12                     </Dim>
            13                     <Dim type="BottomEdge">
            14                         <UnifiedDim scale="1" type="BottomEdge" />
            15                     </Dim>
            16                 </Area>
            17                 <Image type="TopLeftCorner" imageset="WindowsLook" image="ButtonNormalTopLeft" />
            18                 <Image type="TopRightCorner" imageset="WindowsLook" image="ButtonNormalTopRight" />
            19                 <Image type="BottomLeftCorner" imageset="WindowsLook" image="ButtonNormalBottomLeft" />
            20                 <Image type="BottomRightCorner" imageset="WindowsLook" image="ButtonNormalBottomRight" />
            21                 <Image type="LeftEdge" imageset="WindowsLook" image="ButtonNormalLeft" />
            22                 <Image type="TopEdge" imageset="WindowsLook" image="ButtonNormalTop" />
            23                 <Image type="RightEdge" imageset="WindowsLook" image="ButtonNormalRight" />
            24                 <Image type="BottomEdge" imageset="WindowsLook" image="ButtonNormalBottom" />
            25             </FrameComponent>
            26             <ImageryComponent>
            27                 <Area>
            28                     <Dim type="LeftEdge">
            29                         <ImageDim imageset="WindowsLook" image="ButtonNormalLeft" dimension="Width" />
            30                     </Dim>
            31                     <Dim type="TopEdge">
            32                         <ImageDim imageset="WindowsLook" image="ButtonNormalTop" dimension="Height" />
            33                     </Dim>
            34                     <Dim type="RightEdge">
            35                         <UnifiedDim scale="1" type="RightEdge">
            36                             <DimOperator op="Subtract">
            37                                 <ImageDim imageset="WindowsLook" image="ButtonNormalRight" dimension="Width" />
            38                             </DimOperator>
            39                         </UnifiedDim>
            40                     </Dim>
            41                     <Dim type="BottomEdge">
            42                         <UnifiedDim scale="1" type="BottomEdge">
            43                             <DimOperator op="Subtract">
            44                                 <ImageDim imageset="WindowsLook" image="ButtonNormalBottom" dimension="Height" />
            45                             </DimOperator>
            46                         </UnifiedDim>
            47                     </Dim>
            48                 </Area>
            49                 <Image imageset="WindowsLook" image="Background" />
            50                 <Colours topLeft="FFAFAFAF" topRight="FFFFFFFF" bottomLeft="FFFFFFFF" bottomRight="FFAFAFAF" />
            51                 <VertFormat type="Stretched" />
            52                 <HorzFormat type="Stretched" />
            53             </ImageryComponent>
            54         </ImagerySection>


            上面的意思大慨是明白的.但是
            1 <StateImagery name="Normal">
            2             <Layer>
            3                 <Section section="normal" />
            4                 <Section section="label">
            5                     <ColourProperty name="NormalTextColour" />
            6                 </Section>
            7             </Layer>
            8         </StateImagery>

            section = "normal"不是已經(jīng)設(shè)置好了這個Button的所有東西嗎?為什么還要一個section = "label"??這是什么意思呢?
             1 <ImagerySection name="label">
             2             <TextComponent>
             3                 <Area>
             4                     <Dim type="LeftEdge">
             5                         <AbsoluteDim value="0" />
             6                     </Dim>
             7                     <Dim type="TopEdge">
             8                         <AbsoluteDim value="0" />
             9                     </Dim>
            10                     <Dim type="RightEdge">
            11                         <UnifiedDim scale="1" type="RightEdge" />
            12                     </Dim>
            13                     <Dim type="BottomEdge">
            14                         <UnifiedDim scale="1" type="BottomEdge" />
            15                     </Dim>
            16                 </Area>
            17                 <VertFormat type="CentreAligned" />
            18                 <HorzFormat type="WordWrapCentreAligned" />
            19             </TextComponent>
            20         </ImagerySection>
            這個lable主要是用來干嘛的呢?一個朋友的BLOG說是為這個BUTTON設(shè)置文本??
            還是不明白是什么意思??

            雖然不明白,但是還是自己寫了一個BUTTON.首先,用CELayoutEditor.exe 來加載TaharezLook.scheme的,
            去對應(yīng)的TaharezLook.looknfeel里,將這個按鈕添加在后面.你可以改為任意名字,我們把剛才寫的Button外觀改成MyButton
            再到TaharezLook.scheme文件里照著Button復(fù)制一下,然后修改
            <FalagardMapping WindowType="WindowsLook/MyButton" TargetType='CEGUI/Button'        Renderer="Falagard/Editbox"             LookNFeel="TaharezLook/MyButton" />
            這個就可以在添加新的窗口下面你的MyButton.

            ---------------------------------------------------------------
            用MSN用了一個朋友總算知道大慨是怎么回事了.一個BUUTON相當(dāng)于圖片加LABEL文字了...
            section 是一個外觀配置,多個Section構(gòu)成了 某個狀態(tài)的 外觀
            StateImagery 是指 某個狀態(tài)下的外觀
            section是可以復(fù)用的。而StateImagery 就象是自由組裝它們的 人
            為什么 StateImagery 有那些狀態(tài)?因為CEGUI 規(guī)定了這些狀態(tài)。
            那什么是 section, section就是 具體的表現(xiàn)。它對應(yīng)著Imageset里具體的 Image區(qū)域。
            所以, section 負責(zé)實現(xiàn)各種外觀, StateImagery 負責(zé)為各種狀態(tài)選擇、組合 合適的外觀
            但是 對于其他的 控件 ,一個圖片就不夠了。一般來說,定義一個窗口,我們需要定義9個部分:
            1 2 3
            4 5 6
            7 8 9
            4個邊 4個角, 1個中間
            相當(dāng)于 一個 Button+ 一個Laber 的復(fù)合控件

            posts - 94, comments - 138, trackbacks - 0, articles - 94

            Copyright © RichardHe

            久久99精品久久久大学生| 久久99热国产这有精品| 久久天天躁狠狠躁夜夜av浪潮| 久久免费大片| 人妻无码中文久久久久专区| 精品午夜久久福利大片| 天堂无码久久综合东京热| 亚洲精品无码久久久久| 久久综合给合综合久久| 丰满少妇高潮惨叫久久久| 中文字幕精品久久久久人妻| 婷婷久久久亚洲欧洲日产国码AV | 久久不见久久见免费影院www日本| 久久露脸国产精品| 99热都是精品久久久久久| 欧美日韩精品久久久免费观看 | 精品视频久久久久| 99999久久久久久亚洲| 久久亚洲精品无码VA大香大香| 久久久久久久99精品免费观看| 国产成人精品久久| 人妻无码精品久久亚瑟影视| 久久亚洲中文字幕精品一区四| 国产精品久久久久久久久免费| 国产亚洲精久久久久久无码77777 国产亚洲精品久久久久秋霞 | 综合久久一区二区三区 | 国产激情久久久久影院| 麻豆亚洲AV永久无码精品久久| 18禁黄久久久AAA片| 亚洲国产成人久久笫一页| 久久精品18| 香蕉久久夜色精品国产尤物| 久久国产精品无码网站| 久久久久97国产精华液好用吗| 99久久精品国产免看国产一区| 久久精品国产亚洲精品2020| 久久亚洲精品中文字幕| 99国产欧美久久久精品蜜芽| 欧美激情精品久久久久| 国产精品美女久久久久av爽 | 中文字幕成人精品久久不卡|