Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 制定AS3";Textfield";使用buttonMode和useHandCursor_Actionscript 3_Actionscript_Textfield - Fatal编程技术网

Actionscript 3 制定AS3";Textfield";使用buttonMode和useHandCursor

Actionscript 3 制定AS3";Textfield";使用buttonMode和useHandCursor,actionscript-3,actionscript,textfield,Actionscript 3,Actionscript,Textfield,对不起,标题不好。想不出更好的了 我正在做一个软件,它可以配置从XML加载的数据。 用户可以定义文本字段的最大“宽度”,文本字段是多行的,当文本不适合宽度时,会进行换行。文本字段的文本也从XML文件加载,长度是任意的 因为TextField既没有buttonMode属性,也没有useHandCursor属性,所以我将TextFields作为精灵的子对象。因此,对于每个文本字段,都有一个精灵作为父项 那么真正的问题是: (“TextFields”实际上是子级带有TextField的精灵) “文本字

对不起,标题不好。想不出更好的了

我正在做一个软件,它可以配置从XML加载的数据。 用户可以定义文本字段的最大“宽度”,文本字段是多行的,当文本不适合宽度时,会进行换行。文本字段的文本也从XML文件加载,长度是任意的

因为TextField既没有buttonMode属性,也没有useHandCursor属性,所以我将TextFields作为精灵的子对象。因此,对于每个文本字段,都有一个精灵作为父项

那么真正的问题是:

(“TextFields”实际上是子级带有TextField的精灵)

“文本字段”不应在其文本之外单击。目前,精灵似乎延伸到文本字段的整个宽度,因此用户实际上可以从没有文本的区域单击“文本字段”

我“试图”改变精灵的大小,检查了AS3参考,现在我知道为什么在那之后一切都消失了


因此,我需要一个解决方案,其中“TextFields”启用了buttomMode和useHandCursor,并且容器应该能够切断没有文本的区域。

TextField对象具有一些默认大小调整特性。您需要应用以下其中之一:

对于该财产:

让它的形式适合你的文本。然后,通过将其添加到一个空精灵中,所说的精灵也将是您文本的确切大小


更改精灵的大小是错误的方法,因为在这种情况下,实际操作是缩放其内部内容。精灵会自动调整自身大小以适合其包含的对象。只要你确保文本字段的大小正确,父精灵的大小也会正确。

我确信你不再需要它了,但有人可能需要,所以它就在这里

因为你有一个精灵作为他们的父母,你可以让他去淡化老鼠的孩子

yourSprite.tf.text = 'something';
yourSprite.buttonMode = true;
yourSprite.mouseChildren = false;

嗯,我也考虑过这个问题,但是“只要你确保文本字段的大小正确,父精灵的大小也会正确。”。用户可以设置文本字段的宽度,但这对大小调整问题毫无帮助。(我还没有测试过这个,但我假设sprite仍然和文本字段的实际大小一样大)用户如何设置文本字段的宽度?不管怎样,只要您为该字段设置了autosize属性,TextField就会调整以适应文本。你应该在丢弃它之前测试它。宽度是程序中可配置的东西之一,就像文本字段的位置一样。但不管怎样,调整的方法是首先自动调整大小,然后检查宽度是否小于或等于最大宽度,如果不是,则将其设置为最大宽度并禁用自动调整,对吗?不,TextFieldAutoSize允许您在设置宽度后定义宽度。之后,它将继续自动调整字段的高度,这样您就不会得到默认大小的文本字段。如果只设置字段的两个属性之一,则会自动调整另一个属性的大小。