如何解决如何为Delphi编写蓝色文本,并在您开始输入文字时将其删除
我需要在编辑内容上写蓝色文本,以便我在运行时开始在其上输入内容时就将其删除。 请您帮我解决一下。这是给Delphi 2007的
预先感谢
解决方法
您的问题有点模棱两可。可以用几种不同的方式来解释它。
您可以选择当前文本,以便随后的用户输入将替换所选内容。您可以使用标准TEdit
的SelStart
/ SelLength
属性,AutoSelect
属性或SelectAll()
方法来执行此操作。如果希望在TEdit
没有输入焦点时突出显示突出显示,则还可以考虑将其HideSelection
属性设置为false。
或者,您可能会想到“提示横幅”,这是XP中引入的一项功能,只要它不包含实际文本,就可以在编辑控件中显示提示文本。您可以在标准TEdit
中设置此提示文本,方法是通过Win32 API EM_SETCUEBANNER
函数或SendMessage()
宏(在Delphi 2009及更高版本中,{ {1}}为此拥有Edit_SetCueBannerText()
属性)。请注意,您需要在应用程序中TextHint
才能使用此功能。
从我的头顶出来,未经测试:
- 使用标准的TEdit。
- 将布尔变量(标志)设置为TRUE。
- 在TEdit中写蓝色文本。
- 将编辑光标设置在第一个位置
- 在OnKeyDown中,如果标志为true,则将标志设置为false并删除编辑中的文本
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。