关于Richedit的插入字符串问题

雁过留毛 2011-09-29 02:33:41
请问各位在Richedit1中通过菜单插入字符串(如当前日期)并可以撤销通常是怎么实现的?

...全文
361 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
雁过留毛 2011-10-03
  • 打赏
  • 举报
回复
...
雁过留毛 2011-10-02
  • 打赏
  • 举报
回复
...
fengchuixuelai 2011-10-01
  • 打赏
  • 举报
回复
顶一下
s11ss 2011-10-01
  • 打赏
  • 举报
回复
push,pop
jfhyn 2011-09-30
  • 打赏
  • 举报
回复
procedure InsertSymbol(AChar: WideChar);
var
S: WideString;
begin
with TClipboardAccess(Clipboard) do
begin
Open;
try
S := AChar;
SetBuffer(CF_UNICODETEXT, PWideChar(S)^, (Length(S) + 1) * SizeOf(WideChar));
finally
Close;
end;
end;
Editor.PasteFromClipboard;
end;
雁过留毛 2011-09-30
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jfhyn 的回复:]
插入当前日期,通常是先把日期字符串拷贝到剪贴板上,然后再粘贴.
Editor.CopyToClipboard;
Editor.PasteFromClipboard;
Editor.Undo
[/Quote]

我觉得用剪贴板或是用虚拟键输入虽然可以UNDO了但都不像正解,请高人继续指点...
jfhyn 2011-09-30
  • 打赏
  • 举报
回复
插入当前日期,通常是先把日期字符串拷贝到剪贴板上,然后再粘贴.
Editor.CopyToClipboard;
Editor.PasteFromClipboard;
Editor.Undo
lyhoo163 2011-09-30
  • 打赏
  • 举报
回复
路过。
雁过留毛 2011-09-30
  • 打赏
  • 举报
回复
...
jingtuzhong 2011-09-30
  • 打赏
  • 举报
回复
RichEdit1.SelText := '邹家华 '
bdmh 2011-09-29
  • 打赏
  • 举报
回复
自己做undo
雁过留毛 2011-09-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bdmh 的回复:]
这样就会在光标处插入字符串,如果要实现无限制的undo,redo,可以自己写,参考http://blog.csdn.net/bdmh/article/details/6426564
[/Quote]

现在的问题是,用richedit1.SelText := 'aaaaaaaaaa';似乎一次undo都不行啊?
bdmh 2011-09-29
  • 打赏
  • 举报
回复
richedit1.SelText := 'aaaaaaaaaa';这样就会在光标处插入字符串,如果要实现无限制的undo,redo,可以自己写,参考http://blog.csdn.net/bdmh/article/details/6426564
第3章 Visual C++ 2010 MFC菜单编程 103 3.1 菜单编程 103 3.1.1 创建菜单 104 3.1.2 创建菜单热键 115 3.1.3 标记菜单 115 3.1.4 给菜单加入图标 119 3.1.5 禁用菜单 121 3.1.6 移除与加载菜单 127 3.2 菜单消息的传输机制 129 3.2.1 菜单消息的分类 129 3.2.2 菜单消息的传输路由 129 3.3 动态菜单操作 131 3.3.1 添加菜单 131 3.3.2 插入菜单 133 3.3.3 删除菜单 135 3.3.4 插入菜单的命令响应 136 3.3.5 修改菜单 137 3.4 小结 140 第4章 Visual C++ 2010 MFC对话框 第4章 编程 141 4.1 对话框简介 141 4.1.1 对话框的控件简介 141 4.1.2 对话框的种类简介 149 4.1.3 设计对话框 150 4.2 创建与销毁对话框 153 4.2.1 模态对话框 153 4.2.2 非模式对话框 159 4.2.3 属性页对话框 163 4.3 消息对话框 173 4.4 通用对话框 175 4.4.1 文件打开对话框 176 4.4.2 文件保存对话框 178 4.4.3 颜色对话框 179 4.4.4 字体对话框 181 4.4.5 查找对话框 183 4.4.6 页面设置对话框 185 4.4.7 打印对话框 186 4.5 小结 187 第5章 Visual C++ 2010 MFC对话框 第5章 控件 188 5.1 Visual C++ 2010 Button控件 5.1 简介与开发 191 5.2 Visual C++ 2010 List Box 控件 5.2 简介与开发 193 5.3 Visual C++ 2010 Com boBox 5.3 控件简介与开发 195 5.3.1 创建扩展组合框控件 196 5.3.2 在扩展组合框控件中使用 5.3.2 图像列表 197 5.3.3 设置各项的图像 197 5.3.4 处理扩展组合框控件中的 5.3.4 通知消息 198 5.4 Visual C++ 2010 List控件简介与 5.4 开发 198 5.4.1 列表控件和列表视图 199 5.4.2 列表项和图像列表 199 5.4.3 回调项和回调屏蔽 200 5.4.4 创建列表控件 200 5.4.5 创建图像列表 201 5.4.6 向控件添加列(报表视图) 204 5.4.7 向控件添加项 205 5.4.8 在列表控件中滚动、排列、 5.4.8 排序和查找 205 5.4.9 在列表控件中实现工作区 205 5.4.10 处理列表控件中的通知 5.4.10 消息 206 5.4.11 更改列表控件样式 206 5.4.12 虚拟列表控件 207 5.4.13 列表控件的消息映射 209 5.4.14 列表控件的风格选项及表头 5.4.14 设置 210 5.4.15 销毁列表控件 210 5.5 Visual C++ 2010 Edit控件简介与 5.5 开发 211 5.6 Visual C++ 2010 Rich Edit控件 5.6 简介与开发 213 5.6.1 Rich Edit控件中的字符格式 215 5.6.2 Rich Edit控件中的段落格式 215 5.6.3 Rich Edit控件中的当前选定 5.6.3 内容 215 5.6.4 Rich Edit控件中的分词 216 5.6.5 Rich Edit控件中的剪贴板 5.6.5 操作 216 5.6.6 Rich Edit控件中的流操作 216 5.6.7 Rich Edit控件中的打印 5.6.7 操作 216 5.6.8 无底的Rich Edit控件 217 5.6.9 来自Rich Edit控件的通知 217 5.7 Visual C++ 2010 Progress控件 5.7 简介与开发 219 5.7.1 进度控件的样式 219 5.7.2 进度控件的设置 219 5.7.3 操作进度控件 220 5.8 Visual C++ 2010 Tree控件简介与 5.8 开发 220 5.8.1 树控件样式 221 5.8.2 树控件父项和子项 221 5.8.3 树控件项位置 222 5.8.4 树控件项标签 222 5.8.5 树控件标签编辑 223 5.8.6 树控件项的状态 223 5.8.7 树控件图像列表
ListView 排序 Stringgrid内使用回车键代替Tab键 TListBox内显示分栏 TListBox每一行显示交互的颜色 TMemo内光标位置根据鼠标移动 TMemo自动卷动 TRichEdit卷到特定位置 TRxRichEdit插入图像 TStringGrid中插入、删除一行 TStringGrid保存和装载 TTreeview控件显示粗体节点 TWebBrowser中调用“查找”对话框 为Listview栏添加双击事件 为工具栏的TToolButton设置新的索引 仅通过Classname创建和管理任意窗体 从RichEdit取Rtf格式 从TListBox中拖放项目到TRichEdit 从一个TRichedit复制格式Rtf文本到其它 使用CustomSort方法排序TListView 使用DBGrid字段队列同步列标题队列 使用Interfaces和TInterfaceList 使用TRichEdit存储大于64K数据 使用代码移动StringGrid的行和列 使用圆形角显示控件 使用类名显示窗体 保存 装载TCheckListbox值 保存和装载TListView 保存和装载TTreeView 允许TDBGrid栏调整大小但防止移动 克隆控件 克隆窗体 列出控件的所有属性和事件 创建可编辑ListBox 删除Listbox的所有选定项目 删除stringlist中重复项目 删除TStringGrid中的列 动画窗体 取ComboBox List句柄 取TListview内所有选定项目 取TShellListView中选定文件的路径 取列举值的名称 在combobox中实现autocomplete 在DBGrid中使用回车键改变到下一个段 在listbox内列出所有目录、文件和驱动器 在Listbox内显示水平滚动条 在memo中实现UNDO 在RichEdit内搜索文本并选择它 在StringGrid内使用Combobox作为编辑器 在StringGrid单元中画不同颜色 在TComboBox中显示栏 在TComboBox内绘制位图 在TDateTimePicker内显示星期几 在TFileListBox内显示多列 在TListBox中创建彩色项目 在TListBox内拖拽 在TListbox内绘制位图 在TListview内执行二进制搜索 在TListView内拖拽多个项目 在TListView列中创建进度条 在TMemo内查看和编辑MS-DOS文本 在TPageControl拖拽Tabs 在TPrintDialog上放置定制控件 在TRichEdit内使用上标和下标 在TRichEdit内使用超链接 在TRichEdit内文本使用不同的下划线样式 在TRichedit内设置段落行距 在TStringGrid内删除一行 在TStringGrid实现OnColumnClick事件 在自己的控件显示信息 复制Listbox项目到剪贴板 失效TTreeview的tooltips 定制TDateTimePicker的格式 居中控件 屏蔽在EditBox内按回车键的都都声 强制在TEdit内输入 排序StringGrid 搜索和替换RichEdit中文本 搜索和选定TListBox的项目 改变TDBGrid的DefaultRowHeight 改变TRichEdit内选定文本的背景颜色 改变TStringGrid内选定单元的颜色 改变标准对话框 改变状态栏字体样式 改变窗体上所有控件的属性 改变进度条颜色 根据StringGrid列内容自动调整大小 根据列排序TStringGrid 检查Stringgrid中指定单元示范选定 检查TMemo能否取消操作 检查TreeView是否完全展开或折叠 检查TStringGrid是否有滚动条 添加接口对象到list 清空StringGrid的所有单元 移动listbox项目 移动TListView项目 移动TRichEdit内光标到指定位置 聚焦TDBGrid某些单元 自动打开TDateTimePicker 自定义Memo边界 获取TRichEdit中鼠标指针下面的字 访问TRadioGroup的控件 调整TComboBox下拉列表的宽度 转换Editbox的首字符为大写 转换TEdit中每个词的首字母为大写 输出TStringGrid到TListView 运行时创建TButtons队列 运行时创建控件 运行时创建菜单项 运行时替换控件 返回TTreeView内字符串路径 防止在TEdit内剪贴、复制、粘贴 防止用户调整TListView栏大小 限制TEdit的输入 隐藏TListView滚动条 隐藏最小化MDI子窗口 颜色Combo Box 验证TEdit中输入的是数字

5,390

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧