我看到了这张照片,现在想知道是否/如何在Delphi中做到这一点。突出显示/选定的文本显示两种格式,即突出显示颜色和散列线。
http://img9.imageshack.us/img9/4121/easilyselecttextofonela.jpg
答案 0 :(得分:1)
我最近在bible application做了一些非常相似的事情,也在Delphi中做过。
用户可以选择单个经文和所选经文的单个单词。 (但是这个功能还没有发布,所以不要费心去寻找它)
我使用了Microsoft的Web浏览器控件并添加了我自己的选择处理。
我通过用span
元素包含相关部分并更改其CSS样式来完成格式化。删除选择后,我也会删除封闭元素。
困难的部分是使用选择数据结构支持“视觉”选择并处理所有选择事件(点击,按住Shift键,按住Shift键,点按,...)
答案 1 :(得分:0)
嵌入IE似乎是一种比DR says更简单的方法,但您也可以通过在画布上全部绘制来手动执行此操作,一种简单的方法是创建两个位图(一个没有选择另一个被选中(可能像你喜欢的那样复杂 - 虚线,有色,......),你需要知道你所有角色的位置/行为,这对于长文本来说有点困难。
您基本上显示未选择的位图,并通过第二个图像的部分重叠选定的部分。
您还需要通过OnMouseDown,OnMouseMove,OnMouseUp手动处理选择......