Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Обучение VC++ / ЛекцииИнтернетС++ / Лекция_лаб_практикум.doc
Скачиваний:
64
Добавлен:
16.02.2016
Размер:
932.35 Кб
Скачать

Программирование команд главного меню.

Добавьте обработчики для пунктов главного меню. А также создайте обработчики для сообщений UDATE_COMMAND_UI. Это необходимо, для того чтобы Вы могли модифицировать пункты меню в процессе работы программы. Т.е. включать и выключить их, а также выводить перед пунктом флажок, отмечая, что этот пункт выбран.

/////////////////////////////////////////////////////////////

// Обработка комманд главного меню //

////////////////////////////////////////////////////////////

// КРАСНАЯ ГРУППА

// Обработка командного сообщения поступающего от пункта

// Цвета линий->Красный

////////////////////////////////////////////////

void CL3_1View::OnMenuLred()

{

//Если признак "выбранности" данного пункта

//до этого не был установлен, то установить его,

//и цвет ЛИНИЙ сделать красным. В противном случае

//установить признак снятия "выбранности" и установить

//черный цвет линий

if (m_lred==0) {m_lred=1; m_col_l=RGB(255,0,0);}

else {m_lred=0;m_col_l=RGB(0,0,0);}

}

// Обработка командного сообщения поступающего от пункта

// Цвета заливки->Красный

////////////////////////////////////////////////

void CL3_1View::OnMenuZred()

{

//Если признак "выбранности" данного пункта

//до этого не был установлен, то установить его,

//и цвет ЗАЛИВКИ сделать красным. В противном случае

//установить признак снятия "выбранности" и установить

//черный цвет линий

if (m_zred==0) {m_zred=1;m_col_z=RGB(255,0,0);}

else {m_zred=0;m_col_z=RGB(0,0,0);}

}

////////////////////////////////////////////////

//Модификация пункта Цвета линий-> Красный в соответствии

//с признаками "выбранности"

void CL3_1View::OnUpdateMenuLred(CCmdUI* pCmdUI)

{

// Если установлен ризнак "выбранности" красной ЗАЛИВКИ

// то сделать пункт "Цвета линий -> красный" неактивным

// в противном случае сделать его активным и установить

// флажок в соответствии с признаком “выбранности.”

if (m_zred==1) {pCmdUI->Enable(FALSE);}

else

{

pCmdUI->Enable();

pCmdUI->SetCheck(m_lred);

}

}

//Модификация пункта Цвета заливки-> Красный в соответствии

//с признаками "выбранности"

////////////////////////////////////////////////

void CL3_1View::OnUpdateMenuZred(CCmdUI* pCmdUI)

{

// Если установлен ризнак "выбранности" красной ЛИНИИ

// то сделать пункт "Цвета заливки -> красный" неактивным

// в противном случае сделать его активным и установить

//флажок в соответствии с признаком “выбранности.”

if (m_lred==1) {pCmdUI->Enable(FALSE);}

else

{

pCmdUI->Enable();

pCmdUI->SetCheck(m_zred);

}

}

////////////////////////////////////////////////

// СИНЯЯ ГРУППА

////////////////////////////////////////////////

// Обработка командного сообщения поступающего от пункта

// Цвета линий->Синий

void CL3_1View::OnMenuLblur()

{

if (m_lblur==0) {m_lblur=1; m_col_l=RGB(0,0,255);}

else {m_lblur=0;m_col_l=RGB(0,0,0);}

}

////////////////////////////////////////////////

//Модификация пункта Цвета линий-> Синий в соответствии

//с признаками "выбранности"

void CL3_1View::OnUpdateMenuLblur(CCmdUI* pCmdUI)

{

if (m_zblur==1) {pCmdUI->Enable(FALSE);}

else

{

pCmdUI->Enable();

pCmdUI->SetCheck(m_lblur);

}

}

////////////////////////////////////////////////

// Обработка командного сообщения поступающего от пункта

// Цвета заливки->Синий

void CL3_1View::OnMenuZblur()

{

if (m_zblur==0) {m_zblur=1; m_col_z=RGB(0,0,255);}

else {m_zblur=0;m_col_z=RGB(0,0,0);}

}

////////////////////////////////////////////////

//Модификация пункта Цвета заливки-> Синий в соответствии

//с признаками "выбранности"

void CL3_1View::OnUpdateMenuZblur(CCmdUI* pCmdUI)

{

if (m_lblur==1) {pCmdUI->Enable(FALSE);}

else

{

pCmdUI->Enable();

pCmdUI->SetCheck(m_zblur);

}

}

////////////////////////////////////////////////

// ЗЕЛЕНАЯ ГРУППА

////////////////////////////////////////////////

// Обработка командного сообщения поступающего от пункта

// Цвета линий->Зеленый

void CL3_1View::OnMenuLgreen()

{

if (m_lgreen==0) {m_lgreen=1; m_col_z=RGB(0,255,0);}

else {m_lgreen=0;m_col_z=RGB(0,0,0);}

}

////////////////////////////////////////////////

//Модификация пункта Цвета линий-> Зеленый в соответствии

//с признаками "выбранности"

void CL3_1View::OnUpdateMenuLgreen(CCmdUI* pCmdUI)

{

if (m_zgreen==1) {pCmdUI->Enable(FALSE);}

else

{

pCmdUI->Enable();

pCmdUI->SetCheck(m_lgreen);

}

}

////////////////////////////////////////////////

// Обработка командного сообщения поступающего от пункта

// Цвета заливки->Зеленый

void CL3_1View::OnMenuZgreen()

{

if (m_zgreen==0) {m_zgreen=1; m_col_z=RGB(0,255,0);}

else {m_zgreen=0;m_col_z=RGB(0,0,0);}

}

////////////////////////////////////////////////

//Модификация пункта Цвета заливки-> Зеленый в соответствии

//с признаками "выбранности"

void CL3_1View::OnUpdateMenuZgreen(CCmdUI* pCmdUI)

{

if (m_lgreen==1) {pCmdUI->Enable(FALSE);}

else

{

pCmdUI->Enable();

pCmdUI->SetCheck(m_zgreen);

}

}