Каждая программа имеет полосу прокрутки над строкой состояния. Правильно? Ну, не мое.
Когда я попытался настроить собственные полосы прокрутки в своей программе, я удивительно заставил их работать! Так же мне удалось заставить работать строку состояния! Ура! :-) ... Но строка состояния находится над полосой прокрутки, когда она должна быть под полосой прокрутки. Как мне переместить полосу прокрутки? я не мог найти какие-либо функции о перемещении полосы прокрутки. если я сам не создал окно полосы прокрутки, но это не сработало очень хорошо ( у него была странная ошибка: когда я использовал высоту по умолчанию, она стала полностью невидимой полосой прокрутки, а когда я использовал мою определенную высоту, полоса прокрутки имела тему Windows98 или что-то о_О !)
Вот мой код создания строки состояния:
// Create status bar
hStatus = CreateWindowEx(
0,
STATUSCLASSNAME,
NULL,
WS_CHILD | WS_VISIBLE | SBARS_SIZEGRIP,
0, 0, 0, 0,
hWnd,
(HMENU)IDC_MAIN_STATUS,
GetModuleHandle(NULL),
NULL
);
и создание окна:
if (!(hWnd=CreateWindowEx(dwExStyle, // Extended Style For The Window
"OpenGL", // Class Name
title, // Window Title
dwStyle | // Defined Window Style
WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS |
WS_CLIPCHILDREN | WM_HSCROLL | WM_VSCROLL, // Required Window Style
0, 0, // Window Position
WindowRect.right-WindowRect.left, // Calculate Window Width
WindowRect.bottom-WindowRect.top, // Calculate Window Height
NULL, // No Parent Window
NULL, // No Menu
hInstance, // Instance
NULL))) // Dont Pass Anything To WM_CREATE
Должен быть какой-то изящный трюк, который я еще не осознал, кто-нибудь просветит меня, как сделать это правильно?