На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

Using Status Windows



The following example creates a status window that has a sizing grip and divides the window into four equal parts based on the width of the parent window's client area.

// DoCreateStatusWindow - creates a status window and divides it into
// the specified number of parts.
// Returns the handle to the status window.
// hwndParent - parent window for the status window
// nStatusID - child window identifier
// hinst - handle to the application instance
// nParts - number of parts into which to divide the status window
HWND DoCreateStatusWindow(HWND hwndParent, int nStatusID,
HINSTANCE hinst, int nParts)
{
HWND hwndStatus;

RECT rcClient;
HLOCAL hloc;
LPINT lpParts;
int i, nWidth;

// Ensure that the common control DLL is loaded.
InitCommonControls();

// Create the status window.
hwndStatus = CreateWindowEx(
0, // no extended styles
STATUSCLASSNAME, // name of status window class
(LPCTSTR) NULL, // no text when first created
SBARS_SIZEGRIP | // includes a sizing grip

WS_CHILD, // creates a child window
0, 0, 0, 0, // ignores size and position
hwndParent, // handle to parent window
(HMENU) nStatusID, // child window identifier
hinst, // handle to application instance
NULL); // no window creation data

// Get the coordinates of the parent window's client area.
GetClientRect(hwndParent, &rcClient);


// Allocate an array for holding the right edge coordinates.
hloc = LocalAlloc(LHND, sizeof(int) * nParts);
lpParts = LocalLock(hloc);

// Calculate the right edge coordinate for each part, and
// copy the coordinates to the array.
nWidth = rcClient.right / nParts;
for (i = 0; i < nParts; i++) {
lpParts[i] = nWidth;
nWidth += nWidth;
}

// Tell the status window to create the window parts.
SendMessage(hwndStatus, SB_SETPARTS, (WPARAM) nParts,

(LPARAM) lpParts);

// Free the array, and return.
LocalUnlock(hloc);
LocalFree(hloc);
return hwndStatus;
}



Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

Использование Окна Статуса



Следующий пример создает окно статуса, которое имеет калибровку захватывать и делит окно в четыре равных частей основанной на ширине области клиента родительского окна.

// DoCreateStatusWindow - СОЗДАЕТ окно статуса и делит это в // определенное количество частей.
// Возврат ручка в окно статуса.
// hwndParent - Родительское окно для окна / статуса/ nStatusID - идентификатор / окно ребенка/ hinst - ручка в прикладной пример // nParts - количество частей в которые, чтобы делить окно статуса HWND DoCreateStatusWindow(HWND hwndParent, int nStatusID, HINSTANCE hinst, int nParts)
{
HWND hwndStatus;

RECT rcClient;
HLOCAL hloc;
LPINT lpParts;
int я, nWidth;

// Проверьте, что общее управление DLL загружено.
InitCommonControls();

// Создайте окно статуса.
hwndStatus = CreateWindowEx( 0, // Никакие расширенные стили STATUSCLASSNAME, // имя класса окна статуса (LPCTSTR) НЕДЕЙСТВИТЕЛЬНОГО, // никакого текста когда сначала создано SBARS_SIZEGRIP | // включает калибровку зажима

WS_CHILD, // создает окно ребенка 0, 0, 0, 0, // игнорирует размер и позиционирует hwndParent, // ручке в родительское окно (HMENU) nStatusID, // идентификатор окна ребенка hinst, // ручка в прикладной пример НЕДЕЙСТВИТЕЛЬНЫЙ); // никакие данные создания окна

// Получите координаты области клиента родительского окна.
GetClientRect(hwndParent, &rcClient);


// Распределите массив для хранения краевых координат права.
hloc = LocalAlloc(LHND, sizeof(int) * nParts);
lpParts = LocalLock(hloc);

// Вычислите краевую координату права для каждой части, и // копия координаты в массив.
nWidth = rcClient.right / nParts;
для (i = 0; я < nParts; я++) { lpParts[i] = nWidth;
nWidth += nWidth;
}

// Сообщите окно статуса, чтобы создавать части окна.
SendMessage(hwndStatus, SB_SETPARTS, (WPARAM) nParts,

(LPARAM) lpParts);

// Свободный массив, и возврат.
LocalUnlock(hloc);
LocalFree(hloc);
возвращайте hwndStatus;
}



Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz