17 января 2021 года    
Воскресенье | 10:49    
Главная
 Новости
Базы данных
Безопасность PC
Всё о компьютерах
Графика и дизайн
Интернет-технологии
Мобильные устройства
Операционные системы
Программирование
Программы
Связь
Сети
 Документация
Статьи
Самоучители
 Общение
Форум







 

Вставка значка

Если вы вновь посмотрите на окно диалога (рис. 4.1), то увидите справа два элемента типа Picture Control с идентификаторами IDC_RIGHT и IDC_LEFT. Эти элементы необходимо связать с растровыми изображениями значков (ресурсы типа Icon). Так как приложение выполняет функции браузера, то сюда я намереваюсь вставить изображения глаз, которые в принципе можно создать средствами графического редактора Studio.Net. Однако более простым выходом является использование изображений, которые были созданы мастерами своего дела и уже существуют в bmp-файлах. Достаточно много изображений входит в стандартную поставку студии. Они расположены в нескольких папках по адресу ...\Microsoft Visual Studio.Net\Common7\Graphics\icons. Вот алгоритм связывания элемента типа Picture Control с растровым изображением.

  1. Дайте команду Project Add > Resource (или нажмите Ctrl+R).
  2. В окне диалога Add Resource выберите тип ресурса Icon и нажмите кнопку New.
  3. Откройте файл с каким-либо существующим изображением File > Open и т. д., но не забудьте изменить фильтр поиска на (*.*).
  4. Скопируйте найденное и открытое в рамках студии изображение в буфер (Ctrl+C).
  5. Перейдите в предыдущее окно с пустым изображением (Ctrl+F6) и вставьте его (Ctrl+V).
  6. В окне Properties измените идентификатор на тот, который был задан в качестве свойства Image для элемента Picture Control. В нашем случае это IDI_EYERIGHT или IDI_EYELEFT.
  7. Закройте ненужные окна.

Пользуясь этим алгоритмом, создайте две новые картинки и свяжите их с элементами IDC RIGHT И IDC LEFT.

Примечание

Если вы найдете изображение одного глаза (скажем, левого) и откроете его в рамках студии, то изображение можно скопировать в новый ресурс типа Icon и перевернуть (сделать глаз правым), дав команду Image > Flip Horizontal. Исследуйте и другие команды этого меню.

Элементы управления типа Picture Control можно сделать «чувствительными». Покажем, как ввести в приложение способность реагировать на нажатие кнопки мыши в области, занимаемой нашими изображениями глаз. По схеме, которую вы использовали, когда вводили в класс диалога реакцию на WM_HSCROLL, создайте функцию — обработчик сообщения WM_LBUTTONDOWN (нажата левая кнопка мыши). В тело заготовки для функции-обработчика внесите следующий код:

void CLookDlg::OnLButtonDown(UINT nFlags, CPoint point)

{

CRect left, right;

//====== Узнаем координаты левой картинки

GetDlgItem{IDC_LEFT)->GetWindowRect(Sleft);

//====== Переход к относительным координатам

ScreenToClient(Sleft);

//====== Узнаем координаты правой картинки

GetDlgItem(IDC_RIGHT)->GetWindowRect(Sright) ;

ScreenToClient(bright);

//====== Объединяем площади двух картинок

left.UnionRect(left,right);

//====== Если координаты курсора внутри этой площади

if (left.PtlnRect(point))

//======Вызываем диалог About

OnSysCommand(IDM_ABOUTBOX,0);

//====== Вызов родительской версии CDialog::OnLButtonDown(nFlags, point);

}

 

Лента новостей


2006 (c) Copyright Hardline.ru