• <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 閱讀(274) 評(píng)論(0)  編輯 收藏 引用
            今天在參考WindowsLook.looknfeel自己寫了一個(gè)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è)置好了這個(gè)Button的所有東西嗎?為什么還要一個(gè)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>
            這個(gè)lable主要是用來干嘛的呢?一個(gè)朋友的BLOG說是為這個(gè)BUTTON設(shè)置文本??
            還是不明白是什么意思??

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

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

            只有注冊用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


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

            Copyright © RichardHe

            日韩精品国产自在久久现线拍| 久久久噜噜噜久久中文字幕色伊伊 | 91麻豆国产精品91久久久| 麻豆久久久9性大片| 久久国产精品77777| 久久精品国产99久久久香蕉| 久久亚洲AV成人无码| 欧美综合天天夜夜久久| 久久综合五月丁香久久激情| 久久香蕉超碰97国产精品| 久久AAAA片一区二区| 久久精品国产亚洲av影院| 久久精品亚洲精品国产欧美| 亚洲国产精品成人久久| 久久人人爽人人澡人人高潮AV| 国产午夜免费高清久久影院| 久久伊人亚洲AV无码网站| 久久最近最新中文字幕大全| 婷婷久久香蕉五月综合加勒比| 久久久久国产日韩精品网站| 精品国产VA久久久久久久冰| 一级做a爰片久久毛片毛片| 亚洲国产成人久久精品影视 | 久久棈精品久久久久久噜噜| 久久福利片| 久久99亚洲综合精品首页| 91久久成人免费| 国产精品久久永久免费| 久久久久亚洲AV无码麻豆| 久久久一本精品99久久精品88| 久久免费香蕉视频| 久久se精品一区精品二区国产| 精品999久久久久久中文字幕| 无码超乳爆乳中文字幕久久| 伊人久久大香线蕉综合影院首页| 久久久无码精品午夜| 久久强奷乱码老熟女| 久久久久国产精品三级网| 久久综合精品国产一区二区三区| 91精品国产91久久久久久青草 | 伊人久久五月天|