Windows API Урок 33. Создаем текстовое поле (edit)
Для создания текстового поля, как и любого окна, можно использовать функцию CreateWindow. Но мы вместо этой функции используем ее расширенный вариант - а именно функцию CreateWindowEx. Она отличается от функции CreateWindow только одним параметром - в котором мы указываем расширенные стили для создаваемого окна. Этот параметр идет на первом месте.
Вот пример создания текстового поля с помощью функции CreateWindowEx:
...
CreateWindowEx(WS_EX_CLIENTEDGE, "edit", "", WS_CHILD | WS_VISIBLE | ES_RIGHT,
10, 10, 80, 30, hwnd, (HMENU)10000, hInstance, NULL);
...
Остальные параметры стандартные - это текст, который пользователь увидит в текстовом поле (у нас это пустая строка), обычные (не расширенные стили), размер и местоположение создаваемого окна, hwnd родительского окна, идентификатор нашего текстового поля (у нас это 10000). Обратите внимание также на второй параметр - он должен быть равен строке "edit".
Приведенный фрагмент можно вставить, например, в код первого урока - сразу после вызова функции CreateWindow для создания основного окна в функции WinMain.
В качестве дополнительного стиля для нашего текстового поля мы используем стиль WS_EX_CLIENTEDGE. Его применение означает, что у нашего текстового поля будет рамка. Кроме того мы используем стиль ES_RIGHT - для выравнивания вводимого текста по правому краю. Созданное таким способом текстовое поле будет выглядеть приблизительно так:
|