progs.biz  
Начало>WinAPI>API>Урок 33
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
SQL
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

Алексей Дубовцев Microsoft .NET. Наиболее полное руководство.
Алексей Дубовцев Microsoft .NET. Наиболее полное руководство.
Заказать на Озоне



Яндекс-цитирования

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 - для выравнивания вводимого текста по правому краю. Созданное таким способом текстовое поле будет выглядеть приблизительно так:

Текстовое поле (edit)
Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2008 сайт progs.biz
© 2002-2008 Игорь Алексеев