2

朋友 我怎样才能获得 win32 编辑框的“只读”属性?

而且我知道如何设置属性。像这样的代码。

SendDlgItemMessage(g_hwnd, IDC_EDIT_1, EM_SETREADONLY, 1, 0);

但是我怎么知道这个编辑控件有“只读”属性呢?我的意思不是 MFC\CWND 或其他方式,只是 win32 方法,如 SendMessage api。

先谢谢了~

4

1 回答 1

4

根据MSDN

EM_SETREADONLY 消息

设置或删除编辑控件的只读样式 (ES_READONLY)。

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

这是 Win API 调用:

bool bRO = ::GetWindowLongPtr(::GetDlgItem(g_hwnd, IDC_EDIT_1), GWL_STYLE) & ES_READONLY;
于 2015-11-18T19:31:52.350 回答