Как изменить высоту TextField? - PullRequest
0 голосов
/ 20 января 2011

Если я создаю TextField в ActionScript 3, я могу изменить ширину с помощью TextFormat, но как мне изменить высоту?

Пример:

var label : TextField = new TextField();
label.text = "Hello World!";
label.background = true;
label.backgroundColor = 0x800000;  // Red background to see TextField boundary
label.autoSize = "center";

var format : TextFormat = new TextFormat();
format.leftMargin = 20;
format.rightMargin = 20;

label.setTextFormat( format );

addChild( label );

// Setting the height explicitly doesn't work
label.height = label.width * 1.5;

Ответы [ 3 ]

2 голосов
/ 20 января 2011

setTextFormat, очевидно, установит TextFormat, изменяя внешний вид вашего текста , но не изменит текстовое поле , в котором оно отображается. Если вы хотите измените ширину и высоту вашего текстового поля, используйте TextField.width и TextField.height.

Вы также можете комбинировать их с TextField.autoSize: если вы установите width после autoSize, TextField изменит размер только по вертикали, а если вы установите height после autoSize, оно изменится по горизонтали. Вы должны выбрать один из них, конечно.

2 голосов
/ 20 января 2011

autoSize - это проблема:

label.autoSize = "center"; 

Удаление параметра autoSize позволяет изменить высоту textField.Если вы хотите установить выравнивание, используйте вместо него setTextFormat.

setTextFormat

1 голос
/ 01 июня 2012

Если вы хотите автоматически увеличить высоту текстового поля, вам нужно установить:

label.multiline = true;
label.wordWrap = true;

Wordwrap заботится о конце строки в пределах ширины, заданной для вашего текстового поля.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...