Delphi XE5 如何設計並使用FireMonkeyStyle(轉)

如何設計並使用FireMonkeyStyle設計

 

FireMonkey使用Style來控制控件的顯示方式。blog

每一個控件都有一個StyleLookup屬性,FireMonkey就是經過控件的這個屬性來在當前窗體的StyleBook控件中查找匹配的Style,若是找到了這個Style,那麼控件就使用這個Style來顯示。it

 

StyleBook是一個Style的集合,裏面能夠有窗體的Style,按鈕的Style,文本框的Style,等等。每一個Style其實就是一個控件,像經常使用到的TLayout,TRectangle等等,只是這個控件須要設置它的StyleName。原理

好比我在StyleBook中設計這樣一個按鈕:List

l   Layout:TLayout(StyleName設置爲「defaultbutton」)遍歷

n   Rectangle:TRectangle(用來顯示按鈕背景)im

u  Text:TLabel(用來顯示按鈕標題)db

 

那麼這個Layout就表示了一個名爲「defaultbutton」的Style。若是這時候,窗體上放一個Button,而後將它的StyleLookup屬性爲「defaultbutton」,FireMonkey就會從當前窗體的StyleBook中遍歷咱們設計的全部控件,查找StyleName爲Button的StyleLookup屬性值的控件,也就是StyleName爲「defaultbutton」的控件,就是咱們剛纔設計的Layout控件,查找到了以後,就返回一個Layout的克隆,也就是複製一個Layout(它的子控件也會複製進去),而後在Button上顯示出來。img

 

原理就講這些了,下面我用舉個例子來演示一下這些步驟:集合

這個例子是在TListBoxItm控件上使用咱們設計的Style,

  1. 在組件面板(Tool Palette)上選擇一個TStyleBook組件,將它拖放到窗體上,Name爲StyleBook1,而後將窗體StyleBook屬性設置爲StyleBook1。

                       

 

 

 

  1. 在窗體上放一個TListBox組件,將它拖放到窗體上,Name爲ListBox1。

 

 

設置ListBox1的Align屬性爲alClient,

並右擊ListBox1,在彈出的菜單中選中Items Editor…

 

點擊Add Item按鈕,會在ListBox1上面添加一個TListBoxItem,

 

  1. 雙擊StyleBook1,IDE會進入到Style Designer模式:

 

  1. 設計Style,首先在組件面板(Tool Palette)中選擇一個TLayout組件(Layouts分類),拖動到左上角,

 

這時候結構視圖顯示以下:

 

在屬性查看器中設置Layout的StyleName爲defaultitemstyle:

 

而後咱們在Layout下添加一個TRectangle作爲背景:

 

將這個Rectangle的顏色設置爲紅色,也就是將它的Fill.Color設置爲Red,並將Rectangle的Layout屬性設置爲alClient:

 

  1. 按一下FireMonkey Style Designer ToolBar上面的Apply and Close按鈕,好了,一個名爲defaultitemstyle的Style已經設計完成了。
  2. 而後選中咱們以前添加的ListBoxItem1,在屬性查看器中的StyleLookup屬性值更改成defaultitemstyle。

看,這個ListBoxItem已經顯示成咱們設計的Style了(一個紅色的矩形):

相關文章
相關標籤/搜索