Главная / Программирование /
Введение в программирование / Тест 19
Введение в программирование - тест 19
Упражнение 1:
Номер 1
Ресурс диалога объявляется в:
Ответ:
 (1) классе, производном от CDialog
 
 (2) классе, производном от CWinApp
 
Номер 2
Отдельный ресурс диалога:
Ответ:
 (1) является описанием конкретного окна диалога и имеет свой идентификатор 
 (2) применяется для создания диалогового окна 
 (3) позволяет создавать на базе одного ресурса различные по внешнему виду диалоговые окна 
Номер 3
Ресурс диалога:
Ответ:
 (1) указывается своим номером в нумераторе 
 (2) задается символьным описанием 
 (3) является указателем 
Упражнение 2:
Номер 1
Для создания модального диалога следует использовать:
Ответ:
 (1) метод DoModal
 
 (2) метод Create
 
 (3) конструктор класса диалога 
Номер 2
Для создания немодального диалога следует использовать:
Ответ:
 (1) метод DoModal
 
 (2) метод Create
 
 (3) конструктор класса диалога 
Номер 3
Таблица сообщений для диалогового окна начинается макросом:
Ответ:
 (1) BEGIN_MESSAGE_MAP
 
 (2) DECLARE_MESSAGE_MAP
 
 (3) END_MESSAGE_MAP
 
Упражнение 3:
Номер 1
Укажите код создания модального диалога (класса CD1Dlg
, производного от CDialog
), не содержащий ошибок:
Ответ:
 (1) CD1Dlg dlg;
m_pMainWnd = dlg;
INT_PTR nResponse = dlg.DoModal();
if (nResponse == IDOK) { }
else if (nResponse == IDCANCEL) { }
return FALSE;  
 (2) CD1Dlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();
if (nResponse == IDOK) { }
else if (nResponse == IDCANCEL) { }
return FALSE; 
 (3) CD1Dlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.Create();
if (nResponse == IDOK) { }
else if (nResponse == IDCANCEL) { }
return FALSE;  
Номер 2
Укажите код создания немодального диалога (класса CmyDialog
, производного от CDialog
, идентификатор ресурса — IDD_MYDLG
), не содержащий ошибок:
Ответ:
 (1) pDialog = new CMyDialog();
if(pDialog != NULL)
{BOOL ret = pDialog->Create(this);
if(!ret) AfxMessageBox("Ошибка");
pDialog->ShowWindow(SW_SHOW);}
else AfxMessageBox("Ошибка"); 
 (2) pDialog = new CMyDialog();
if(pDialog != NULL)
{BOOL ret = pDialog->Create(IDD_MYDLG,this);
if(!ret) AfxMessageBox("Ошибка");
pDialog->ShowWindow(SW_SHOW);}
else AfxMessageBox("Ошибка"); 
 (3) pDialog = new CMyDialog(IDD_MYDLG);
if(pDialog != NULL)
{BOOL ret = pDialog->Create(this);
if(!ret) AfxMessageBox("Ошибка");
pDialog->ShowWindow(SW_SHOW);}
else AfxMessageBox("Ошибка"); 
Номер 3
Укажите код, отображающий стандартный диалог Open
и не содержащий ошибок:
Ответ:
 (1) char CMyDlg::szFilters[]="txt|*.my|Все (*.*)|*.*||";
CFileDialog fileDlg = new CFileDialog (TRUE, "txt", "*.txt",OFN_FILEMUSTEXIST| OFN_HIDEREADONLY,
szFilters, this);
if( fileDlg.DoModal ()==IDOK ) {
CString pathName = fileDlg.GetPathName();
CString fileName = fileDlg.GetFileTitle(); } 
 (2) char CMyDlg::szFilters[]="txt|*.my|Все (*.*)|*.*||";
CFileDialog fileDlg = new CFileDialog (TRUE, "txt", "*.txt",OFN_FILEMUSTEXIST| OFN_HIDEREADONLY,
szFilters, this);
if( fileDlg.Create ()==IDOK ) {
CString pathName = fileDlg.GetPathName();
CString fileName = fileDlg.GetFileTitle(); } 
 (3) char CMyDlg::szFilters[]="txt|*.my|Все (*.*)|*.*||";
CFileDialog fileDlg = new CFileDialog (TRUE, "txt", "*.txt",OFN_FILEMUSTEXIST| OFN_HIDEREADONLY,
szFilters, this);
if( fileDlg.DoModal ()==OK ) {
CString pathName = fileDlg.GetPath();
CString fileName = fileDlg.GetFile(); } 
Упражнение 4:
Номер 1
При создании диалога с применением библиотеки MFC таблица сообщений для диалогового окна должна в заголовочном файле указываться макросом :
Ответ:
 (1) BEGIN_MESSAGE_MAP
 
 (2) DECLARE_MESSAGE_MAP
 
 (3) END_MESSAGE_MAP
 
Номер 2
При создании диалога с применением библиотеки MFC таблица сообщений для диалогового окна располагается:
Ответ:
 (1) в файле реализации класса приложения, производном от CWinApp
 
 (2) в файле реализации класса диалога, производном от CDialog
 
Номер 3
Метод EndDialog
клаcса CDialog
библиотеки MFC :
Ответ:
 (1) закрывает окно диалога и освобождает память 
 (2) только освобождает память 
 (3) закрывает окно диалога без освобождения памяти 
Упражнение 5:
Номер 1
Укажите код создания немодального диалога (класса CMyD производного от CDialog библиотеки MFC, идентификатор ресурса — IDD_MYDLG), не содержащий ошибок:
Ответ:
 (1) pDialog = new CMyD();
if(pDialog != NULL)
{BOOL ret = pDialog->Create();
if(!ret) AfxMessageBox("Ош.");
pDialog->ShowWindow(SW_SHOW);}
else AfxMessageBox("Ош."); 
 (2) pDialog = new CMyD(IDD_MYDLG);
if(pDialog != NULL)
{BOOL ret = pDialog->Create();
if(!ret) AfxMessageBox("Ошибка");
pDialog->ShowWindow(SW_SHOW);}
else AfxMessageBox("Ошибка"); 
 (3) pDialog = new CMyD ();
if(pDialog != NULL)
{BOOL ret = pDialog->Create(IDD_MYDLG,this);
if(!ret) AfxMessageBox("Ошибка");
pDialog->ShowWindow(SW_SHOW);}
else AfxMessageBox("Ошибка"); 
Номер 2
Укажите код создания модального диалога (класса CMyDlg производного от класса CDialog библиотеки MFC), не содержащий ошибок:
Ответ:
 (1) CMyDlg dlg;
m_pMainWnd = dlg;
INT_PTR nResponse = m_pMainWnd.DoModal();
if (nResponse == IDOK) { }
else if (nResponse == IDCANCEL) { }
return FALSE;  
 (2) CMyDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.Create();
if (nResponse == IDOK) { }
else if (nResponse == IDCANCEL) { }
return FALSE;  
 (3) CMyDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();
if (nResponse == IDOK) { }
else if (nResponse == IDCANCEL) { }
return FALSE;  
Номер 3
Какой класс библиотеки MFC является базовым для всех классов стандартных диалогов:
Ответ:
 (1) COleDialog
 
 (2) CFileDialog
 
 (3) CCommonDialog