Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
С++_навч_пос14_new.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.86 Mб
Скачать

CListBox - список

//обробник події BN_CLICKED

void CMy5Dlg::OnBnClickedButton2()

{

//m_list1-список класу CListBox

m_list1.AddString(L"String1");//добавити рядок у список

m_list1.DeleteString(1);//видалити рядок 1

m_list1.InsertString(1,L"String2");//вставити рядок на місце 1

CString s;//рядок

m_edit.GetWindowTextW(s);//отримати текст з поля редагування

m_list1.AddString(s);//добавити рядок у список

s.Format(_T("%d"),m_list1.GetCount());//помістити в рядок кількість елементів списку

m_edit.SetWindowTextW(s);//помістити текст у поле редагування

}

//обробник події LBN_SELCHANGE (вибір змінено)

void CMy5Dlg::OnLbnSelchangeList1()

{

CString s;//рядок

m_list1.GetText(m_list1.GetCurSel(),s);//помістити в рядок s текст з вибраного рядка списку

m_edit.SetWindowTextW(s);//помістити текст у поле редагування m_edit

}

CComboBox - комбінований список

//обробник події BN_CLICKED

void CMy1Dlg::OnBnClickedButton1()

{

//m_combo1-комбінований список класу CComboBox

CString s;//рядок

m_combo1.GetWindowTextW(s);//отримати текст з поля редагування комбінованого списку m_combo1

m_combo1.AddString(s);//добавити рядок у список

m_combo1.AddString(L"String1");//добавити рядок у список

m_combo1.InsertString(1,L"String2");//вставити рядок у список в позицію 1

m_combo1.SetCurSel(1);//вибрати позицію 1

}

//обробник події CBN_SELCHANGE (вибір змінено)

void CMy1Dlg::OnCbnSelchangeCombo1()

{

CString s;//рядок

m_combo1.GetLBText(m_combo1.GetCurSel(),s);//помістити в рядок s текст з вибраного рядка списку

m_button1.SetWindowTextW(s);//установити надпис на кнопці m_button1

}

CString - рядок

//обробник події BN_CLICKED

void CMy1Dlg::OnBnClickedButton2()

{

UpdateData();//отримати дані з елементів керування

CString s("hello");//рядок s класу CString

s+=m_edit1;//добавити вміст рядка m_edit1 класу CString

s.Trim();//видалити пробіли

if (s!=m_edit1) s=s.Mid(2,4);//якщо рядки s і m_edit1 не рівні то помістити в рядок s 4 символи рядка s починаючи з 2 позиції

s.SetAt(1,L'*');//установити в позицію 1 символ '*'

s.Insert(1,L"string");//вставити в позицію 1 рядок "string"

int i=s.Find(L"str",0);//знайти позицію рядка "str" в рядку s

s.Format(L"%s%d%s%.3f",m_edit1,s.GetLength()," ",2.2513);//помістити в рядок дані різного типу

wchar_t *p=s.GetBuffer();//перетворити в тип wchar_t *

s=p;//присвоїти рядку CString дані типу wchar_t *

char *p2=new char[s.GetLength() + 1];//рядок типу char * довжиною s+1

wcstombs_s(0, p2, s.GetLength() + 1, s, _TRUNCATE);//перетворити в тип char *

s=p2;//присвоїти рядку CString дані типу char *

double x;//дійсна змінна

s="-12.4583";

x=_wtof(s);//конвертувати рядок в дійсне

int n;//ціла змінна

s="-10";

n=_wtoi(s);//конвертувати рядок в ціле

m_edit1=s;//присвоїти рядку m_edit1 рядок s

UpdateData(false);//помістити дані в елементи керування

}

CImage - рисунок, cdc - контекст пристрою

void CMy6Dlg::OnBnClickedButton1()

{

//отримати вказівник на Picture Control

CStatic *s=(CStatic*)GetDlgItem(IDC_STATIC);

//рисунок

CImage image;//включіть atlimage.h у ваш файл stdafx.h

CFileDialog dlg(true);//діалог відкриття файлу

dlg.DoModal();//зробити модальним

image.Load(dlg.GetFileName());//завантажити рисунок

CDC *pDC=s->GetDC();//контекст пристрою Picture Control

CDC *iDC=CDC::FromHandle(image.GetDC());//контекст пристрою рисунку

iDC->MoveTo(20,0);//перемістити поточну позицію

iDC->LineTo(20,20);//рисувати лінію з поточної позиції

image.ReleaseDC();//вивільнити DC

image.Draw(pDC->GetSafeHdc(),0,0);//рисувати рисунок на Picture Control

CFileDialog sdlg(false);//діалог збереження файлу

sdlg.DoModal();//зробити модальним

image.Save(sdlg.GetFileName());//зберегти рисунок

}