如何获取win32编辑框的'read-only' 属性?

How can I get the 'read-only' property of a win32 edit box?

朋友 如何获得 win32 编辑框的 'read-only' 属性?

而且我知道如何设置 属性。像这样的代码。 </p> <p>SendDlgItemMessage(g_hwnd, IDC_EDIT_1, EM_SETREADONLY, 1, 0);</p> <p> 但是我怎么知道这个编辑控件有 'read-only' 属性 ? 我的意思不是 MFC\CWND 或某种方式,只是 win32 方法,例如 SendMessage api.

提前致谢~

根据MSDN

EM_SETREADONLY message

Sets or removes the read-only style (ES_READONLY) of an edit control.

因此,只需使用带有 GWL_STYLE 的 GetWindowLongPtr() 从您的控件中读取该样式。

这是 Win API 调用:

bool bRO = ::GetWindowLongPtr(::GetDlgItem(g_hwnd, IDC_EDIT_1), GWL_STYLE) & ES_READONLY;