当用户在Flex tlf文本流控件中删除整行时,如何停止格式化(粗体等)丢失

时间:2011-07-06 13:38:53

标签: flex actionscript-3 flex3 tlf

我在Flex 3中使用文本布局框架文本流来获取嵌入的图像。在应用程序的编辑字段中,用户可以应用格式。除非用户删除他们输入的所有文本然后再次开始输入然后格式化丢失,否则一切正常。

我正在使用

   //setup default formatting
   currentCF.fontWeight = FontWeight.NORMAL;
   _currentCF.fontStyle = FontPosture.NORMAL;
   _currentCF.textDecoration = TextDecoration.NONE;
   _currentCF.color = 0; //black 
   IEditManager(textFlow.interactionManager).applyLeafFormat(_currentCF);

要设置初始格式,然后使用类似的代码在用户更改格式时应用格式。

那么如果用户删除所有文本,我怎么能阻止用户“删除”格式呢?

谢谢, 佰

1 个答案:

答案 0 :(得分:0)

行。不确定允许删除格式的span元素是怎么回事。但是我通过捕获退格键\删除键并将当前格式设置到文本流上来解决这个问题,这已经解决了。

protected function onKeyUp(event:KeyboardEvent):void
    {

        //check if backspacing or deleting
        if (event.keyCode == 8 || event.keyCode == 46)
        {
            //check if they have removed all text which can lose the formatting 
            if (textFlow.textLength == 1)
            {
                //apply the current formatting
                editMan.selectAll();
                IEditManager(textFlow.interactionManager).applyLeafFormat(_currentCF);
            }
        }


    }