Мне нужна помощь в стилизации компонентов FormItem во Flex - PullRequest
0 голосов
/ 06 октября 2008

У меня есть форма, которую я хотел бы стилизовать. В частности, я хотел бы изменить цвет фона метки элемента формы. (атрибут backgorundColor изменяет как метку, так и цвет фона входных данных)

т.е.


<mx:Form>
    <mx:FormItem label="username:">
        <mx:TextInput />
    </mx:FormItem>
</mx:Form>

Я бы хотел, чтобы метка с именем пользователя: имела другой цвет фона, но текстовый ввод по-прежнему оставался бы цветом фона по умолчанию.

возможно ли это с FormItem?

Ответы [ 3 ]

2 голосов
/ 07 октября 2008

У formitem есть объект, который он использует для отображения метки под названием FormItemLabel, цель этих объектов состоит в том, чтобы вы могли стилизовать метку элемента формы.

В flex 2 для изменения стиля вы можете попробовать:

FormItemLabel {

}

Однако я посмотрел на ссылку flex 2 lang, и не похоже, что вы можете изменить цвет фона метки. Нажмите здесь для ссылки на lang ref

Если вы используете flex 3, желаемый способ изменить метку FormItem - это через formitems labelStyleName

FormItem {
  labelStyleName: newStyle;
}

Однако, опять же, я не верю, что они добавили возможность изменять цвет фона самой метки. Нажмите здесь для ссылки на lang ref

Наилучшим выбором действий, если это требуется, будет расширение класса formitem, если у кого-то еще нет идей.

Надеюсь, это поможет ...

0 голосов
/ 28 февраля 2011

Как я вижу, проблема "зависает без ответа" в течение двух лет ... и мне нужна точно такая же функциональность - другой цвет фона для стороны этикетки.

Я использую Flex3. Я попробовал фон формы - это меняет всю форму. Затем попробовал FormItem - если у вас есть только ввод текста - он покрывает фон, но если у вас мало кнопок, промежуток между ними также будет одного цвета. Затем вам нужен дополнительный HBox с другим фоном. А также нет промежутка между фоном метки и контролем ввода.

Я не хочу переписывать элемент управления FormItem.

Кажется, мне нужно будет использовать стиль моих предков: Grid вместо форм и GridItem вместо FormItem. Затем вы можете оформить каждую ячейку в любой цвет. : О (

0 голосов
/ 06 октября 2008

Попробуйте использовать исследователи гибкого стиля, чтобы создать желаемый стиль:

Я использовал TextArea в проводнике стилей и отформатировал цвет фона, который дал следующий вывод CSS:

TextArea {
   backgroundColor: #0000ff;
}

Вы можете изменить это на следующее, чтобы включить в свою таблицу стилей:

.formLabel {
   backgroundColor: #0000ff;
}

Затем в теге FormItem:

<FormItem label="Label" styleName="formLabel" />

Дополнительная информация о таблицах стилей Flex: Таблицы стилей Flex

Эти примеры покажут, что вы можете объявить стили в тегах mxml Style, а не во внешней таблице стилей, если хотите.

...