Азбука программирования в Win32 API


Азбука программирования в Win32 API - стр. 134


break; case IDMJExit:

SendMessage(hWnd, WM_CLOSE, 0,0);

break;

}

return 0;

case WM_DESTROY: PostQuitMessage(O); retuni 0;

! return DefWindowProc(hWnd,Message,wParam, IParam);

BOOL CALLBACK ProgressBarDialogProc(HWND hDlg, UINT Message,

WPARAM wParam, LPARAM IParam)

{

static HWND hEditWnd; static HWND hSpinWnd; static HWND hProgressBarWnd; int i; switch(Message)

{

case WMJNITDIALOG: hEditWnd = GetDlgItem(hDlg, ID_Edit);

hSpinWnd = CreatcUpDownControl(WS_CHILD | WS_BORDER |

WS_VISIBLE | UDS_SETBUDDYINT | UDS_ALIGNRIGHT, 0, 12,50,50, hDlg, ID_Spin, hlnst, hEditWnd, 10,0,5);

hProgressBarWnd = CreateWindow(PROGRESS CLASS,

"ProgressBar Demo", WS_CHILD j WSJVISIBLE, 10,75, 130,20, hDlg, NULL, hlnst, NULL); SendMessage(hProgressBarWnd, PBM^SETRANGE, 0,

MAKELPARAM(O.IO));

SendMcssage(hProgressBarWnd, PBM_SETSTEP, 1, 0); SendMessage(hProgressBarWnd, PBM_SETPOS, 5, 0); return TRUE; case WM_VSCROLL: SendMessage(hProgressBarWnd, PBM_SETPOS, GetDlgItemInt(hDlg,

ID_Edit,NULL,l),0); return TRUE; caseWM COMMAND:

160

switch(LOWORD(wParam))

{

case ID_OK: EndDialog(hDlg,0); return TRUE; } break;

} return FALSE;

Вид диалогового окна, возникающего после выбора пользователем эле­мента «Dialog» в главном меню программы, показан на рис. 15.

Piogiessbai Demo .

4XI

 

 

 

,  :  - •' •'

 

"-- ...:.,:.'4i.;-:;;v,W>»i';..-';.v"

---::     \: !^"i';,V;"«Tv::,«™. • ,,.-   ,',   •   -.;•:•*?-   •-•>-/.:

 

cm --..-'

 

••••••

 

:}'--

 

;.                  r.......0.____,:||

 

•i'ij"-.

 

 

 

V^-V""V.

 

Рис. 15. Диалоговое окно со спином и индикатором

Эта программа по своему действию очень похожа на приведенную в предыдущем разделе. Разница состоит в том, что спин управляет не трекбаром, а индикатором. Рекомендую читателю нажать несколько раз кнопки спина для того чтобы позиция спина изменилась, и посмотреть, что произойдет с индикатором. При разборе программы особое внимание следует уделить обработке сообщений WMJNITDIALOG и WM_VSCROLL.




Начало  Назад  Вперед



Книжный магазин