Как я могу получить свойство "только для чтения" окна редактирования win32?
Друзья Как я могу получить свойство "только для чтения" окна редактирования win32?
И я знаю, как установить собственность. код как это.
SendDlgItemMessage(g_hwnd, IDC_EDIT_1, EM_SETREADONLY, 1, 0);
Но как я могу узнать, что этот элемент управления для редактирования имеет свойство "только для чтения"? Я имею в виду не MFC\CWND или что-то еще, а просто метод win32, например, SendMessage api.
Заранее спасибо ~
1 ответ
Решение
По данным MSDN:
EM_SETREADONLY сообщение
Устанавливает или удаляет стиль только для чтения (ES_READONLY) элемента управления редактирования.
Так что просто прочитайте этот стиль из вашего элемента управления, используя GetWindowLongPtr() с GWL_STYLE.
Вот вызов Win API:
bool bRO = ::GetWindowLongPtr(::GetDlgItem(g_hwnd, IDC_EDIT_1), GWL_STYLE) & ES_READONLY;