Операционные системы. Марапулец Ю.В. - 11 стр.

UptoLike

Составители: 

/*MAIN_ONTIMER - Использует сообщение таймера для обновления списка. */
void Main_OnTimer( HWND hWnd, UINT uTimerID )
{
// Обновляет данные, представленные в списке
UpdateListBox() ;
return;
}
Функция Main_OnlnitMenu просто выполняет установку или снятие
отметки команды меню Use Mutex.
/* MAIN_ONINITMENU - Устанавливает или снимает отметку команды меню
Use Mutex на основании значения переменной bUseMutex. */
void Main_OnInitMenu( HWND hWnd, HMENU hMenu )
{
CheckMenuItem ( hMenu, IDM_USEMUTEX, MF_BYCOMMAND |
(UINT)( bUseMutex ? MF_CHECKED :
MF_UNCHECKED ) ) ;
return;
}
Функция Main_OnCommand объединяет все сообщения, для которых нет
специальных обработчиков. (Обработчики сообщений группируются в функции
Main_WndProc, которая с помощью макрокоманды HANDLE_MSG
перенаправляет их на обработку соответствующим функциям.)
/* MAIN_ONCOMMAND - Реагирует на команды пользователя. */
void Main_OnCommand ( HWND hWnd, int iCmd, HWND hwndCtl, UINT uCode )
{
switch ( iCmd )
{
case IDM_ABOUT: // вывод окна About
MakeAbout ( hWnd ) ;
break;
case IDM_EXIT: // выход из программы
DestroyWindow( hWnd ) ;
break;
case IDM_SUSPEND: // изменение приоритета или состояния потока
case IDM_RESUME:
case IDM_INCREASE:
case IDM_DECREASE:
DoThread( iCmd ); // модификация параметров потока;
case IDM_USEMUTEX: // включение или отключение
// исключающего семафора
ClearChildWindows( ); // установление белого цвета
11
/*MAIN_ONTIMER - Использует сообщение таймера для обновления списка. */
void Main_OnTimer( HWND hWnd, UINT uTimerID )
{
            // Обновляет данные, представленные в списке
      UpdateListBox() ;
      return;
}

     Функция Main_OnlnitMenu просто выполняет установку или снятие
отметки команды меню Use Mutex.

/* MAIN_ONINITMENU - Устанавливает или снимает отметку команды меню
      Use Mutex на основании значения переменной bUseMutex. */
void Main_OnInitMenu( HWND hWnd, HMENU hMenu )
{
      CheckMenuItem ( hMenu, IDM_USEMUTEX, MF_BYCOMMAND |
                      (UINT)( bUseMutex ? MF_CHECKED :
                 MF_UNCHECKED ) ) ;
      return;
}

     Функция Main_OnCommand объединяет все сообщения, для которых нет
специальных обработчиков. (Обработчики сообщений группируются в функции
Main_WndProc, которая с помощью макрокоманды HANDLE_MSG
перенаправляет их на обработку соответствующим функциям.)

/* MAIN_ONCOMMAND - Реагирует на команды пользователя. */
void Main_OnCommand ( HWND hWnd, int iCmd, HWND hwndCtl, UINT uCode )
{
      switch ( iCmd )
      {
            case IDM_ABOUT:                     // вывод окна About
                  MakeAbout ( hWnd ) ;
                  break;
            case IDM_EXIT:                     // выход из программы
                  DestroyWindow( hWnd ) ;
                  break;
            case IDM_SUSPEND: // изменение приоритета или состояния потока
            case IDM_RESUME:
            case IDM_INCREASE:
            case IDM_DECREASE:
                  DoThread( iCmd );     // модификация параметров потока;
            case IDM_USEMUTEX:          // включение или отключение
                                         // исключающего семафора
                  ClearChildWindows( );     // установление белого цвета
                                   11