<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
minWidth="955"
minHeight="600" xmlns:local="*">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
[Bindable]
public var keyArray:ArrayCollection=new ArrayCollection(["AS", "SELECT", "FROM", "WHERE", "AND", "OR"]);
]]>
</mx:Script>
<local:HighlightKeywordTextArea width="500"
height="300"
keyColor="red"
keyArray="{keyArray}"
text="select name as 姓名 from user_info where id='key'">
</local:HighlightKeywordTextArea>
</mx:Application>
<?xml version="1.0" encoding="utf-8"?>
<mx:TextArea xmlns:mx="http://www.adobe.com/2006/mxml"
creationComplete="textarea_creationCompleteHandler(event)">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.controls.textClasses.TextRange;
import mx.events.FlexEvent;
[Bindable]
public var keyArray:ArrayCollection;
[Bindable]
public var keyColor:String="red";
private var tr:TextRange;
private var crlf:String=String.fromCharCode(13);
private var regEx:RegExp=new RegExp(crlf, "g");
private function setKeyColor(num:int, key:String):void
{
var text:String=this.text.toUpperCase().replace(regEx, " ");
var str:String=text.substr(num, text.length);
var strArray:Array=str.split(" ");
var keyIndex:int=strArray.indexOf(key);
if (keyIndex != -1)
{
if (keyIndex != 0)
{
for (var i:int; i < keyIndex; i++)
{
num+=(strArray[i] as String).length + 1;
}
}
var length:int=key.length;
tr=new TextRange(this, false, num, num + length);
tr.color=keyColor;
num+=(length + 1);
if (num < text.length)
{
setKeyColor(num, key);
}
}
}
private function addTextRange():void
{
try
{
tr=new TextRange(this);
tr.color="black";
tr.textDecoration="normal";
tr.fontSize=20;
for each (var key:String in keyArray)
{
setKeyColor(0, key);
}
}
catch (err:RangeError)
{
}
}
private function textArea_change(evt:Event):void
{
addTextRange();
}
protected function textarea_creationCompleteHandler(event:FlexEvent):void
{
addTextRange();
}
]]>
</mx:Script>
</mx:TextArea>
分享到:
相关推荐
在Flex应用中,DataGrid通常用于显示来自数据提供者(如ArrayCollection或XMLListCollection)的数据,并支持排序、分页和过滤等功能。本文将深入探讨如何利用关键词对Flex DataGrid中的数据进行过滤,以实现更高效...
标题“Flex中文本高亮显示”涉及到的是在Adobe Flex中实现文本内容的高亮显示技术。Flex是一款基于ActionScript的开源框架,用于构建富互联网应用程序(RIA)。在Flex中,文本高亮通常用于突出显示用户搜索的关键字...
这些标记通常是SQL关键字、标识符(如表名或列名)、操作符、常量等。C++中,这通常通过扫描器(lexer)或词法生成器(如Flex)来完成。词法分析器会识别SQL语句中的各个元素,并将它们转化为统一的数据结构,以便...
Flex可以自动生成词法分析器,识别SQL语句中的关键字、符号和其他元素。通过Flex,NSQL能更高效地处理各种SQL变体,确保解析的准确性。 接下来,我们讨论“SQL语法树解析”。语法树是一种数据结构,它以树状形式...
### Flex 实现高亮闪烁显示 Polyline 的方法 在 Flex 中实现高亮闪烁显示 Polyline 是一种常见的图形用户界面设计技巧,特别是在地图应用、数据可视化等领域。本文将详细介绍如何使用 Flex 和相关技术来实现这一...
本文的目的是为了提供一种通用的SQL语法分析策略,以解决SQL语法分析过程中的冲突消解、可重入策略和错误处理三个大问题,实现对Oracle的SQL语句进行语法分析并构建完整的SQL语法树的目标,为进一步的处理提供了方便...
本篇主要探讨如何在Flex的`Datagrid`中实现分页定位和高亮显示。 首先,分页定位涉及的主要任务是确保用户在进行数据修改后,返回时能够快速定位到修改过的记录。这需要我们关注两个关键点:`Combobox`的定位和数据...
Java开发案例-springboot-47-整合Mybatis-Flex操作SQL-源代码+文档.rar Java开发案例-springboot-47-整合Mybatis-Flex操作SQL-源代码+文档.rar Java开发案例-springboot-47-整合Mybatis-Flex操作SQL-源代码+文档.rar...
在Flex中,可以利用各种技术来实现与数据库的交互,包括操作本地SQL数据库。本篇文章将详细探讨Flex如何操作数据库,特别是针对本地SQL数据库的处理。 一、Flex与数据库连接 在Flex中,数据访问通常通过ADO.NET、...
在Flex中实现文件上传和进度显示,通常涉及到多个技术层面,包括客户端的用户界面设计、服务器端的数据处理以及通信协议的使用。以下是关于这个主题的详细知识点: 1. **Flex组件库**:Flex提供了一套丰富的组件库...
An SQL parser, generated from Bison (Yacc) and Flex (Lex). Original version - most of the work - comes from John Levine's Flex & Bison book published by O'Reilley. Example usage: $ echo "SELECT a.name...
本项目“flex3+java+sqlserver实现的增删查改”就是这样一个实例,它结合了Adobe Flex 3作为前端开发框架,Java作为后端服务器端语言,以及Microsoft SQL Server作为数据库管理系统,实现了基本的数据操作功能,即增...
本篇文档将详细介绍如何在Flex中实现全文检索时的高亮显示效果。 首先,Flex是一个用于开发富互联网应用(Rich Internet Applications, RIA)的开源框架。它主要基于ECMAScript for XML (E4X) 的语法,结合...
1. **定义词法规则**:编写`flex`配置文件,定义各种SQL关键字、操作符和常量的正则表达式,以及它们如何转换为词法单元。 2. **定义语法规则**:编写`bison`配置文件,定义SQL语句的BNF(巴科斯范式)或EBNF(扩展...
Flex4是一种基于ActionScript 3.0的框架,用于创建富互联网应用程序(RIA)...通过深入学习并实践“01-05AS的条件控制语句”这个视频教程,你将能够更自如地控制你的Flex4应用程序的流程,从而提升开发效率和用户体验。
在众多实现Flex与后端数据库连接的方法中,我们选择了Remoting的方式,通过FluorineFX与ASP.NET结合实现Flex访问SQL Server 2005数据库的功能,并将查询结果展示在GridView控件中。 #### 方案比较 Flex访问数据库...
在IT行业中,SQL(Structured Query Language)是一种用于管理和处理关系数据库的强大语言,而Flex...通过理解这些知识点,开发者可以利用Flex和SQL实现高效、安全的Web应用,提供丰富的用户体验并有效地处理后端数据。
Linux环境中使用Flex_Bison进行SQL语法分析
标题中的"flex实现滑动显示隐藏效果"指的是使用Flex框架来创建一个可以滑动展示或隐藏内容的组件。这个功能在移动应用和网页设计中非常常见,比如侧边栏菜单、抽屉式导航或者可展开的详情区域。 首先,我们需要理解...
"Flexwheel"是基于Flex实现的一种特定组件,主要用于创建图片滚动和时间滚动的效果。这种效果常用于增强用户体验,尤其是在展示大量信息或者产品图片时,能够以吸引人的方式呈现内容。 首先,我们要理解什么是Flex...