Робота зі стандартними ресурсами h2>
1. Методи класу CButton h2>
HBITMAP GetBitmap () const; p>
Повертає дескриптор растрового зображення,
зіставлених кнопці. Якщо такого не існує, то повертається NULL. P>
HBITMAP SetBitmap (HBITMAP hBitmap); p>
Порівнює кнопці растрове зображення. Значним
параметра повинен бути дескриптор растрового зображення. Правила розміщення
растрового зображення такі ж, як і у значка. p>
HCURSOR GetCursor (); p>
Повертає дескриптор курсору, зіставлена кнопці
методом SetCursor. Якщо у кнопки немає зіставлених курсору, то повертається
NULL. P>
HCURSOR SetCursor (HCURSOR hCursot); p>
Порівнює кнопці курсор, зображення якого буде
поміщено на поверхню кнопки аналогічно значку і растровому зображенню. p>
UINT GetState () const; p>
Повертає опис набору поточних станів кнопки.
Щоб виділити з цього опису значення конкретних типів стану, можна
використовувати маски: p>
0х0003 - виділяє власний стан кнопки.
Застосовується лише до прапорці або перемикача. Якщо результат побітового
множення дає 0, значить кнопка перебуває у невибраної стані, 1 - в
вибраному, 2 - в невизначеному. p>
0х0004 - виділяє стан першого типу. Ненульовий
варіант означає, що кнопка "натиснута", нульовий - кнопка вільна. p>
0х0008 - виділяє положення фокусу. Ненульовий варіант
- Кнопка у фокусі клавіатури. P>
int GetCheck () const; p>
Повертає власний стан прапорця або
перемикача. Повертає значення може приймати одне із значень: 0 --
кнопка не вибрана; 1 - кнопка вибрана; 2 - кнопка в невизначеному стані.
Якщо кнопка не є ні перемикачем, ні прапорцем, повертається 0. P>
void SetCheck (int nCheck); p>
Встановлює власний стан прапорця або
перемикача. Значення задаються з набору: 0 - вибрана, 1 - вибране; 2 --
невизначений. Значення 2 застосовується лише до прапорці з властивістю 3State. P>
UINT GetButtonStyle () const; p>
Повертає стиль кнопки. p>
void SetButtonStyle (UINT nStyle, BOOL bRedraw = TRUE); p>
Встановлює стиль кнопки. Якщо параметр bRedraw
дорівнює TRUE, кнопка перемальовує. p>
HICON GetIcon () const; p>
Повертає дескриптор піктограми, зіставлень
кнопці. Якщо у кнопки немає співставлений піктограми, повертає NULL. P>
HICON SetIcon (HICON hIcon); p>
Порівнює кнопці піктограму. Значення параметра
при виклику повинен бути дескриптор піктограми. p>
Піктограма автоматично збожеволіє на поверхню
кнопки і зсувається в її центр. Якщо поверхню кнопки менше піктограми, вона
обрізається з усіх боків до розмірів кнопки. Положення піктограми може бути
вирівняний і не по центру. Для цього потрібно, щоб кнопка мала одну з таких
властивостей: BS_LEFT, BS_RIGHT, BS_CENTER, BS_TOP, BS_BOTTOM, BS_VCENTER p>
Даний метод встановлює для кнопки тільки одну
піктограму, яка буде нарівні з текстом бути присутнім при будь-якому її
стані. Не треба плутати її з растровим зображенням у растрової кнопки. P>
2. Методи класу CEdit h2>
Вікна редагування можуть працювати в режимах
короткого і багато-редакторів. Наведемо спочатку методи, загальні для
обох режимів, а потім методи для багато-редактора. p>
Загальні методи: p>
DWORD GetSel ()
const; p>
void
GetSel (int & nStartChar, int & nEndChar) const; p>
Отримує першу і останню позиції виділеного
тексту. Для значення типу DWORD молодше слово містить позицію перше, старше
- Останнього символу. P>
void SetSel (DWORD
dwSelection, BOOL bNoScroll = FALSE); p>
void SetSel (int
nStartChar, int nEndChar, BOOL bNoScroll = FALSE); p>
Встановлює нове виділення тексту, задаючи першого і
останній виділений символ. Значення FALSE параметра bNoScroll повинно
відключати переміщення курсору в область видимості. p>
void ReplaceSel (LPCTSTR lpszNewText); p>
Замінює виділений текст на рядок, що передається в
параметрі lpszNewText. p>
void Clear (); p>
Видаляє виділений текст. p>
void Copy (); p>
Копіює виділений текст у буфер. p>
void Cut (); p>
Переносить (копіює і видаляє) виділений текст у
буфер обміну. p>
void Paste (); p>
Вставляє текст з буфера обміну, починаючи з позиції, в
якій знаходиться курсор. p>
BOOL Undo (); p>
Скасування останньої операції, виконаної редактором.
Якщо редактор однорядковий, повертається завжди невід'ємне значення, інакше
невід'ємне значення повертається лише у разі успішної заміни. p>
BOOL CanUndo () const; p>
Визначає, чи можна скасувати останню операцію
редактора. p>
void EmptyUndoBuffer (); p>
Скидає прапор undo, що сигналізує про можливість
скасування останньої операції редактора, і тим самим робить неможливим скасування.
Цей прапор скидається автоматично при виконанні методів SetWindowText і
SetHandle. P>
BOOL GetModify () const; p>
Повертає невід'ємне значення, якщо вміст
вікна редагування не модифіковану. Інформація про модифікацію
підтримується в спеціальному прапорі, обнуляється при створенні вікна редагування
і при виклику методу: p>
void SetModify (BOOL
bModified = TRUE); p>
Встановлює або скидає прапор модифікації (див.
попередній метод). Прапор скидається при виклику методу з параметром FALSE і
встановлюється при модифікації вмісту вікна редагування або при виклику
SetModify з параметром TRUE. P>
BOOL
SetReadOnly (BOOL bReadOnly = TRUE); p>
Встановлює режим перегляду (bReadOnly = TRUE) або
редагування (bReadOnly = FALSE). p>
TCHAR GetPasswordChar () const; p>
Повертає символ, який при виведенні пароля буде
з'являтися на екрані замість символів, що набирають користувачем. Якщо такий
символ не визначений, повертається 0. Встановлюється цей символ методом (по
замовчуванням використовується "*"): p>
void
SetPasswordChar (TCHAR ch); p>
void LimitText (int
nChars = 0); p>
Встановлює максимальну довжину в байтах тексту,
який може ввести користувач. Якщо значення параметра дорівнює 0, довжина
тексту встановлюється рівною UINT_MAX. p>
Методи роботи з багаторядкових редактором: p>
void LineScroll (int
nLines, int nChars = 0); p>
Прокручує текст у області редагування. Параметр
nLimes задає кількість рядків для вертикальної прокрутки. Вікно редагування НЕ
прокручує текст далі останнього рядка. При позитивному значенні
параметра область редагування зсувається уздовж тексту до останньому рядку,
при негативній - до першої. p>
Параметр nChars задає кількість символів для
горизонтального прокручування. Вікно редагування прокручує текст вправо, навіть
якщо рядки закінчилися. У цьому випадку в області редагування з'являються
пробіли. При позитивному значенні параметра область редагування зсувається
уздовж до кінця рядка, при негативному - до початку. p>
int GetFirstVisibleLine () const; p>
Повертає номер першої видимої рядка. p>
int GetLineCount () const; p>
Повертає кількість рядків тексту, що знаходиться в буфері
редагування. Якщо текст не вводився, повертає 1. P>
int GetLine (int nIndex, LPTSTR lpszBuffer) const; p>
int GetLine (int
nIndex, LPTSTR lpszBuffer, int nMaxLength) const; p>
Копіює рядок з номером, рівним значенню параметра
nIndex, в буфер, заданий параметром lpszBuffer. Перше слово в буфері повинно
задавати його розмір. Коли Ви робите другого варіанту методу значення параметра
nMaxLength копіюється в першому слово буфера. p>
Метод повертає число в дійсності
скопійованих байтів. Якщо номер рядка більше або дорівнює числу рядків в буфері
вікна редагування, повертає 0. Текст копіюється без будь-яких змін,
нуль-символ не додається. p>
int LineIndex (int
nLine =- 1) const; p>
Повертає номер першого символу в рядку.
Невід'ємне значення параметра приймається як номера рядка.
Значення -1 задає поточний рядок. Якщо номер рядка більше або дорівнює числу
рядків в буфері вікна редагування (рядки нумеруються з 0), повертається 0. p>
3. b> Методи b> b> класу b> CListBox b> p>
void
ResetContent (); p>
Очищає вміст списку, роблячи його порожнім. p>
int AddString (LPCSTR lpszItem); p>
Додає рядок lpszItem до списку і сортує його,
якщо при створенні включено властивість Sort. В іншому випадку елемент
додається в кінець списку. p>
int DeleteString (UINT nIndex); p>
Видаляє зі списку елемент з індексом nIndex.
Індексація елементів починається з 0. P>
int GetCurSel () const; p>
Отримує індекс елемента, вибраного користувачем. p>
int SetCurSel (int nSelect); p>
Зазначає елемент з індексом nSelect як обраний
елемент списку. Якщо значення параметра дорівнює -1, список не буде містити
зазначених елементів. p>
int GetText (int
nIndex, LPSTR lpszBuffer) const; p>
void GetText (int
nIndex, CString & rString) const; p>
Копіює елемент з індексом nIndex в буфер. p>
int SetTopIndex (int nIndex); p>
Організовує прокручування списку у вікні так, щоб елемент
з індексом nIndex був видимим. p>
int FindString (int
nStartAfter, LPCSTR lpszItem) const; p>
Організовує пошук в списку і повертає в якості
результату індекс елементу списку, префікс якого збігається з рядком
lpszItem. Результат не залежить від регістра, в якому набиралися символи
порівнюваних рядків. Параметр nStartAfter задає початок пошуку, але пошук іде по
всьому списку. Він починається від елемента, наступного за nStartAfter, до кінця
списку, а потім продовжується від початку списку до елементу з індексом
nStartAfter. Як результат видається перший знайдений елемент,
що задовольняє умовам пошуку. Якщо такого немає, результат отримує значення
LB_ERR. P>
int FindStringExact (int nIndexStart, LPCSTR lpszFind)
const; p>
Цей метод відрізняється від попереднього тим, що тепер
НЕ префікс елемент повинен співпадати з рядком lpszFind, а сам елемент. Пошук
як і раніше не чутливий до регістру, в якому набираються символи. p>
4. Методи класу CComboBox p>
int GetCurSel ()
const; p>
Повертає цілочисельний покажчик вибраної строчки. p>
int SetCurSel (int nSelect );; p>
Ставить покажчик на рядок з номером nSelect. p>
int GetLBText (int
nIndex, LPTSTR lpszText) const; p>
void GetLBText (int
nIndex, CString & rString) const; p>
Записує вміст рядки з індексом nIndex в
змінні LPTSTR lpszText або CString & rString. p>
int
GetLBTextLen (int nIndex) const; p>
Повертає довжину рядка з індексом nIndex. p>
int AddString (LPCTSTR lpszString); p>
Додає рядок у списку. p>
int
DeleteString (UINT nIndex); p>
Видалення рядки з індексом nIndex. p>
int InsertString (int
nIndex, LPCTSTR lpszString); p>
Замінює рядок з індексом nIndex вмістом
змінної LPCTSTR lpszString. p>
5. b> Методи b> b> класу b> CProgressCtrl b> p>
void SetRange (short
nLower, short nUpper); p>
void SetRange32 (int
nLower, int nUpper); p>
Встановлює мінімальне (nLower) і максимальна
значення (nUpper). p>
void
GetRange (int & nLower, int & nUpper); p>
Записує у змінні nLower і nUpper мінімальне і
максимальне значення. p>
int GetPos (); p>
Повертає поточне значення. p>
int SetPos (int nPos); p>
Встановлює поточне значення в nPos. p>
int SetStep (int nStep); p>
Встановлює крок (nStep) виводу. p>
6. Методи класу CSliderCtrl h2>
int GetRangeMax ()
const; p>
int GetRangeMin ()
const; p>
void
GetRange (int & nMin, int & nMax) const; p>
Перші дві функції повертають максимальне і
мінімальне знаненіе, а третій - записує ці значення в nMax і nMin
відповідно. p>
void
SetRangeMin (int nMin, BOOL bRedraw = FALSE); p>
void
SetRangeMax (int nMax, BOOL bRedraw = FALSE); p>
void SetRange (int
nMin, int nMax, BOOL bRedraw = FALSE); p>
Перші дві функції встановлюють максимальне і
мінімальне знаненіе, а третій - встановлює ці значення з змінних nMax
і nMin відповідно. Аргумент bRedraw відповідає за перемальовування слайдера. p>
int GetPos () const; p>
Повертає поточну позицію. p>
void SetPos (int nPos); p>
Встановлює поточну позицію в nPos. p>
BOOL SetTic (int
nTic); p>
Встановлює крок (nTic). p>
void SetTicFreq (int
nFreq); p>
Встановлює частоту зарубок (nFreq). p>
7. Методи класу b> CSpinButtonCtrl b> p>
int SetPos (int
nPos); p>
Встановлює поточну позицію в nPos. p>
int GetPos () const;; p>
Повертає поточну позицію. p>
void SetRange (int
nLower, int nUpper); p>
void SetRange32 (int
nLower, int nUpper); p>
Встановлює максимальне і мінімальне знаненіе з
змінних nMax і nMin відповідно. p>
void GetRange (int
& lower, int & upper) const; p>
void GetRange32 (int
& lower, int & upper) const;; p>
Ці дві функції записують максимальне і мінімальне
знаненіе в upper і lower відповідно. p>
Список літератури h2>
Для підготовки даної роботи були використані
матеріали з сайту http://www.realcoding.net/
p>