|
char* str2 = new char[20]; *str2 = 0;
char* str3 = new char[20]; *str3 = 0;
char* str4 = new char[20]; *str4 = 0;
char* String1 = new char[100]; *String1 = 0;
char* String2 = new char[100]; *String2 = 0;
POSITION pos = theApp.m_pDocManager->GetFirstDocTemplatePosition();
CSingleDocTemplate* Doc = (CSingleDocTemplate*)
theApp.m_pDocManager->GetNextDocTemplate(pos);
pos = Doc->GetFirstDocPosition();
CMy2Doc* pDoc = (CMy2Doc*)Doc->GetNextDoc(pos);
for (int i = 0; i < pDoc->Control.Massiv->GetQ(); i++)
if (i == combo.GetCurSel())
pDoc->Control.Find(pDoc->Control.Massiv->Key[i]);
str1 = pDoc->Control.Auto->Model;
str2 = pDoc->Control.Auto->Color;
_itoa(pDoc->Control.Auto->YearDesigned,str3,10);
_itoa(pDoc->Control.Auto->Price,str4,10);
strcat(String2," ");strcat(String2,"-MODEL-");
strcat(String2," ");strcat(String2,"-COLOR-");
strcat(String2," ");strcat(String2,"-YEAR-");
strcat(String2," ");strcat(String2,"-PRICE-");
strcat(String1," ");strcat(String1,str1);
strcat(String1," ");strcat(String1,str2);
strcat(String1," ");strcat(String1,str3);
strcat(String1," ");strcat(String1,str4);
list.ResetContent ();
list.AddString((LPCTSTR)String2);
list.AddString((LPCTSTR)String1);
}
// код функции Initial()
void CFindDlg::Initial (){
POSITION pos = theApp.m_pDocManager->GetFirstDocTemplatePosition();
CSingleDocTemplate* Doc = (CSingleDocTemplate*)
theApp.m_pDocManager->GetNextDocTemplate(pos);
pos = Doc->GetFirstDocPosition();
CMy2Doc* pDoc = (CMy2Doc*)Doc->GetNextDoc(pos);
int k = pDoc->Control.Massiv->GetQ();
combo.ResetContent ();
for (int i = 0; i < k; i++)
combo.AddString ((LPCTSTR)pDoc->Control.Massiv->Key[i]);
}
// код функции DoDataExchange()
void CFindDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_COMBO1, combo);
DDX_Control(pDX, IDC_LIST1, list);
}
Листинг 26.2. Пример функции для вывода текста в диалоговое окно
void CMFCTextOutView::PrintText(CDC* pDC)
{
// структура для задания параметров шрифта
LOGFONT logFont;
// обнуление всех параметров структуры
memset(&logFont, 0, sizeof(logFont));
// задание значений нужных параметров
logFont.lfHeight = -MulDiv(24, pDC->GetDeviceCaps(LOGPIXELSY), 72);
logFont.lfWeight = FW_LIGHT;
logFont.lfOutPrecision = OUT_TT_ONLY_PRECIS;
logFont.lfItalic = 1;
// создание нового шрифта
CFont newFont;
if (!newFont.CreateFontIndirect(&logFont))
return;
// внесение нового шрифта и сохранение старого
CFont* pOldFont = pDC->SelectObject(&newFont);
// вывод текста
pDC->TextOut(50,40,_T("Футбол - это прекрасно!"));
// восстановление старого шрифта
pDC->SelectObject(pOldFont);
pDC->TextOut(60,80,_T("Теннис - это увлекательно!"));
}
Листинг 27.1. Пример объявления объекта класса CFile и создания файла
CFile f;
CFileException ex;
if(!f.Open("pFileName.txt", CFile::modeCreate | CFile::modeWrite, &ex))
{
#ifdef _DEBUG
afxDump << "File could not be opened " << ex.m_cause << "\n";
#endif
}
Листинг 27.2. Пример объявления и создания объекта класса CFile с помощью указателя
// объявление указателя на объект класса CFile
public:
CFile* pFile;
...
// создание объекта класса CFile
pFile = new CFile(lpszPathName,CFile::
modeReadWrite|CFile::typeBinary);
[V1]А какому текстовому символу можно поставить в соответствие этот графический? – этот графический символ обозначает знак переноса в текстах программ, он входит как макрос с именем "ЛистингПеренос" в состав шаблона, используемого в нашей с Вами редакции БХВ-Петербург
Дата добавления: 2015-09-29; просмотров: 22 | Нарушение авторских прав
<== предыдущая лекция | | | следующая лекция ==> |