![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2012
Сообщений: 40
|
Здравствуйте!
Есть Button. Есть скин у Button. <?xml version="1.0" encoding="utf-8"?> <s:SparkSkin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:components="modules.editingTree.components.*" minWidth="60" minHeight="20" alpha.disabled="0.5"> <fx:Metadata> [HostComponent("spark.components.Button")] </fx:Metadata> <s:states> <s:State name="up"/> <s:State name="over"/> <s:State name="down"/> <s:State name="disabled"/> </s:states> <s:Rect width="100%" height="100%"> <s:stroke> <s:SolidColorStroke color="0x000000" weight="2"/> </s:stroke> <s:fill> <s:SolidColor color="0xFFFFFF"/> </s:fill> </s:Rect> <s:Label id="labelDisplay" width="100%" height="100%" textAlign="center" verticalAlign="middle" fontFamily="Arial" fontSize="12" fontWeight="bold"/> </s:SparkSkin> Текст у кнопки задается,например, так "Имя\n(1912)" Получаются две строчки. Можно ли реализовать так, чтобы "Имя", например, имело 14 размер шрифта, а (1912) - 10? |
|
|||||
|
Можно и два Label. Все равно придется писать или свою кнопку или свою реализацию IDisplayText.
Добавлено через 32 секунды P.S. Второе предпочтительнее.
__________________
משיח לא בא משיח גם לא מטלפן |
|
|||||
|
Регистрация: Mar 2012
Сообщений: 40
|
А разве можно 2 Label использовать? Ведь текст приходит к элементу с id="labelDisplay".
|
|
|||||
|
Если их добавить в контейнер с id "labelDisplay" реализующий IDisplayText, то хоть три. Этот контейнер и будет разруливать, какую часть строки засунуть в нужный Label (или преобразовывать строку для RichText).
__________________
משיח לא בא משיח גם לא מטלפן |
|
|||||
|
Регистрация: Mar 2012
Сообщений: 40
|
<classes:RichTextForButton id="labelDisplay" width="100%" height="100%" textAlign="center" verticalAlign="middle"> <s:Label id="row1" fontWeight="bold" fontSize="14" text="{labelDisplay.rowName}"/> <s:Label id="row2" fontWeight="bold" fontSize="10" text="{labelDisplay.rowDate}"/> </classes:RichTextForButton> package { import spark.components.RichText; public class RichTextForButton extends RichText { public function RichTextForButton() { super(); } private var _rowName:String; [Bindable(event = "rowNameChanged")] public function get rowName():String { return _rowName; } private var _rowDate:String; [Bindable(event = "rowDateChanged")] public function get rowDate():String { return _rowDate; } override public function set text(value:String):void { if (value != "") { var a:Array = value.split("\n"); _rowName = a[0]; _rowDate = a[1]; } } } } "TypeError: Недопустимый элемент типа spark.components::Label передан в mxmlChildren" Или надо было по другому как-то делать? |
|
|||||
|
Регистрация: Mar 2012
Сообщений: 40
|
Внес коррективы, теперь все работает.
package { import flash.events.Event; import spark.components.RichText; public class RichTextForButton extends RichText { public function RichTextForButton() { super(); } private var _rowName:String; [Bindable(event = "rowNameChanged")] public function get rowName():String { return _rowName; } private var _rowDate:String; [Bindable(event = "rowDateChanged")] public function get rowDate():String { return _rowDate; } override public function set text(value:String):void { if (value != "") { var a:Array = value.split("\n"); _rowName = a[0]; _rowDate = a[1]; dispatchEvent(new Event("rowNameChanged")); dispatchEvent(new Event("rowDateChanged")); } } } } <?xml version="1.0" encoding="utf-8"?> <s:SparkSkin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="60" minHeight="20" alpha.disabled="0.5" xmlns:classes="modules.editingTree.classes.*"> <fx:Metadata> [HostComponent("spark.components.Button")] </fx:Metadata> <s:states> <s:State name="up"/> <s:State name="over"/> <s:State name="down"/> <s:State name="disabled"/> </s:states> <s:Rect width="100%" height="100%"> <s:stroke> <s:SolidColorStroke color="0x000000" weight="2"/> </s:stroke> <s:fill> <s:SolidColor color="0xFFFFFF"/> </s:fill> </s:Rect> <classes:RichTextForButton id="labelDisplay" width="100%" height="100%" textAlign="center" verticalAlign="middle"> <s:span fontWeight="bold" fontFamily="Arial" fontSize="12" text="{labelDisplay.rowName}"/> <s:br/> <s:span fontWeight="bold" fontFamily="Arial" fontSize="10" text="{labelDisplay.rowDate}"/> </classes:RichTextForButton> </s:SparkSkin> |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:51. |
|
|
« Предыдущая тема | Следующая тема » |
|
|