fmx的memo设置了readonly,有没有办法禁止选中复制?

net_morning 2017-03-16 04:27:41
fmx的memo设置了readonly := true,有没有办法禁止长按选中复制?
...全文
791 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
santiaodahan 2017-04-13
  • 打赏
  • 举报
回复
引用 6 楼 lyhoo163 的回复:
[quote=引用 5 楼 xxfly 的回复:] 如果需屏蔽按键复制,可以这样 procedure Tfrmx.memoKeyPress(Sender: TObject; var Key: Char); begin Key:=Char(0); end;
此法可以控制快捷键。[/quote] Fmx的Memo没有KeyPress事件。
lyhoo163 2017-04-12
  • 打赏
  • 举报
回复
引用 5 楼 xxfly 的回复:
如果需屏蔽按键复制,可以这样 procedure Tfrmx.memoKeyPress(Sender: TObject; var Key: Char); begin Key:=Char(0); end;
此法可以控制快捷键。
xxfly 2017-04-12
  • 打赏
  • 举报
回复
如果需屏蔽按键复制,可以这样 procedure Tfrmx.memoKeyPress(Sender: TObject; var Key: Char); begin Key:=Char(0); end;
武稀松 2017-03-29
  • 打赏
  • 举报
回复
memo的CopyToClipboard;不是虚方法,也没有OnCopyToClipboard;之类的事件,只有两种办法。 第一,修改Memo的源代码 第二,简单粗暴在你要不需要它拷贝的时候加上 TPlatformServices.Current.SupportsPlatformService先获取剪切板备份下来 TPlatformServices.Current.RemovePlatformService(IFMXClipboardService); 让系统不支持剪切板就行了。 缺点是其他的控件也不能复制了。 需要可以复制的话TPlatformServices.Current.AddPlatformService();把刚才备份的加回来
yaowz27 2017-03-29
  • 打赏
  • 举报
回复
Memo的Enable属性设为False,外部一样可以写进去。
santiaodahan 2017-03-29
  • 打赏
  • 举报
回复
CanFocus设置为False试一下。完全禁止编辑的话可以用Label。
lyhoo163 2017-03-29
  • 打赏
  • 举报
回复
1、TMemo 设置ReadOnly:=True; 这是不能通过键盘录入字符。并非屏蔽复制功能。 2、TMemo 右键默认系统的快捷菜单,其中就有复制、拷贝等等项目。 3、屏蔽TMemo的右键快捷菜单,可以通过窗口中加入一个TPopupMenu,不对TPopupMenu进行设置,即让它无TMenuItem菜单项目。再让TMemo的PopupMenu指定为该PopupMenu1。这样,运行时你的Tmemo的右键,就屏蔽了。

5,927

社区成员

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

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