немодальное окно и обмен сообщениями
if(!m_pTestDial){ //если диалог не создан
m_pTestDial=new CGraf(this); //то создаем его
m_pTestDial->Create();
}
else{ //если создан
m_pTestDial->SetActiveWindow(); //то делаем его активным
m_pTestDial->ShowWindow(SW_SHOWNORMAL);
}
m_pTestDial объявлена в классе вида как CGraf* m_pTestDial; где CGraf непосредственно класс вызываемого диалога. На диалоге созданы некоторые компоненты, каждому из которых назначена переменная.
Добавляю кнопку в Graf.cpp и обработчик. m_ShowGraf - объявлена BOOL m_ShowGraf; и принадлежит чекбоксу на форме. При нажатии на эту кнопку даже если чекбокс выбран, все-равно ложь.
void CGraf::OnBnClickedBtnprim()
{
CGraf dlg;
UpdateData(true);
bool ddd=dlg.m_ShowGraf;
}
Я подозреваю, что CGraf dlg - это уже другой объект, а текущим окном является m_pTestDial. Как к нему получить доступ тогда? Короче я запутался. Помогите плз...
Спасибо.
Код:
bool ddd=this.m_ShowGraf;
если кнопка и чекбокс принадлежат одному окну
Да, все на одном окне.
error C2228: left of '.m_ShowGraf' must have class/struct/union
PS:
bool ddd=this->m_ShowGraf;
Охотник, ты просто гений. Увидел бы вживую - пожал бы руку с большим уважением. Заработала!!! 2 дня не прошли напрасно. Эмоции хлещут от радости.