Delphi中的BiDi文本 - 如何通过这种图片的语言选择要编辑的文本?

时间:2009-02-22 16:32:02

标签: delphi

我看到了这张照片,现在想知道是否/如何在Delphi中做到这一点。突出显示/选定的文本显示两种格式,即突出显示颜色和散列线。

http://img9.imageshack.us/img9/4121/easilyselecttextofonela.jpg

2 个答案:

答案 0 :(得分:1)

我最近在bible application做了一些非常相似的事情,也在Delphi中做过。

用户可以选择单个经文和所选经文的单个单词。 (但是这个功能还没有发布,所以不要费心去寻找它)

我使用了Microsoft的Web浏览器控件并添加了我自己的选择处理。

我通过用span元素包含相关部分并更改其CSS样式来完成格式化。删除选择后,我也会删除封闭元素。

困难的部分是使用选择数据结构支持“视觉”选择并处理所有选择事件(点击,按住Shift键,按住Shift键,点按,...)

答案 1 :(得分:0)

嵌入IE似乎是一种比DR says更简单的方法,但您也可以通过在画布上全部绘制来手动执行此操作,一种简单的方法是创建两个位图(一个没有选择另一个被选中(可能像你喜欢的那样复杂 - 虚线,有色,......),你需要知道你所有角色的位置/行为,这对于长文本来说有点困难。

您基本上显示未选择的位图,并通过第二个图像的部分重叠选定的部分。

您还需要通过OnMouseDown,OnMouseMove,OnMouseUp手动处理选择......