c++ - 如何在 C++ Win32 GUI 中为文本框设置默认背景(灰色)文本?

标签 c++ winapi textbox default placeholder

创建文本框时

hwnd = CreateWindowEx(0, "EDIT", [...])

如何在该框的背景上设置占位符(默认,灰色)文本,在提供一些输入时它会消失?

最佳答案

创建编辑控件后,发送 EM_SETCUEBANNER给它的消息:

SendMessage(hwndEdit, EM_SETCUEBANNER, 0, (LPARAM)L"Default text");

或者使用 Edit_SetCueBannerText宏观:

Edit_SetCueBannerText(hwndEdit, L"Default text");

无论哪种方式,您还需要 enable Visual Styles .

关于c++ - 如何在 C++ Win32 GUI 中为文本框设置默认背景(灰色)文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42284861/

相关文章:

C++ cin.getline() 导致程序崩溃

c++ - 将非常量参数传递给常量参数

c++ - 捕捉以太网插入和拔出的瞬间

asp.net - 使用 HappyJs 进行验证时更改文本框边框颜色

java - 文本框中的文本

c++ - g++ 链接器 :/usr/lib/libGL. so.1:无法读取符号:无效操作

c++ - 如何从固定的候选列表中删除列表中的所有单词?

验证具有错误域的帐户时,C++ LogonUser() API 速度很慢

c - 为Windows实现C11线程

c# - 离开文本框后,透明文本框不显示文本