Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pr_Excel1.doc
Скачиваний:
12
Добавлен:
03.09.2019
Размер:
1.55 Mб
Скачать

Задание 4.5. Изменение цвета объекта

Решим следующую задачу. На рабочем листе находится командная кнопка (Name = Цвет). При наведении мыши на левую половину кнопки кнопка должна окрашиваться в красный цвет. При наведении на правую половину – в зеленый. Здесь используется метод MouseMove (наведение мыши).

Цвет объекта устанавливается с помощью свойства BackColor. Для выбора цвета используется внутренняя функция RGB(), которая позволяет получать множество оттенков путем сложения трех основных цветов спектра: R – red, G – green. B – Blue. Согласно цветовой модели RGB каждая из составляющих может меняться от 0 до 255 градаций. Таким образом, цвет кнопки будет определяться следующим выражением:

Цвет1.BackColor = RGB(a,b,c)

a, b и c – числовые значения красного, зеленого и синего оттенков, лежащие в пределах от 0 до 255.

Например:

Цвет.BackColor(255,0,0) – красный цвет.

Цвет.BackColor(255,255,255) – белый цвет.

Цвет.BackColor(255,255,0) – желтый цвет.

Представим кнопку, условно разделенную осями координат «x» и «y». Используем свойства кнопки Width и Height (ширина и высота) – рис. 4.21.

0

Рис. 4.21.Условные оси координат

Выражение :

x >1/2*Цвет.Width

‘будет означать, что координата лежит «х» лежит правее начала координат (координата больше половины ширины кнопки).

Выражение:

x<1/2*Цвет.Width

‘координата «х» лежит левее начала координат.

Программный код для изменения цвета кнопки показан на рис. 4.22.

Для изменения цвета применен оператор ветвления (If-Then-Else).

If x>1/2*Цвет.Width Then

Цвет.BackColor = RGB(255,0,0)

Else: Цвет.BackColor = RGB(0,255,0)

End If

End Sub

Рис. 4.22. Программный код для изменения цвета кнопки

Если в задаче встречается несколько условий (например, необходимо раскрасить кнопку в четыре цвета), используем координату по высоте «у» и свойство кнопки «Height».

В этом случае используем оператор ветвления с ключевым словом ElseIf.

Текст программы показан на рис. 4.23.

Com1- имя раскрашиваемой кнопки.

Рис.4.23.

Глава 5. Выполнение самостоятельной работы

Задание 5.1. На рабочем листе расположите элемент управления - кнопку. Напишите программный код, чтобы при наведении курсора мыши на кнопку она могла принимать один из двух цветов. Например, красный, при наведении на верхнюю половину кнопки и синий, при наведении курсора мыши на нижнюю половину кнопки.

Задание 5.2. Разместите на листе окно для рисунка (элемент управления Рисунок). Разработайте программный код так, чтобы при наведении курсора мыши на левую половину окна рисунка, в этом окне отображалась одна картинка, а при попадании курсора мыши на правую половину окна, другая.

Задание 5.3

На втором рабочем листе Рабочей книги создайте список сотрудников, как показано в таблице 5.1.

Таблица 5.1

A

B

C

1

Петров

Петр

Петрович

2

Иванов

Иван

Иванович

3

Сидоров

Николай

Николаевич

Далее на первом рабочем листе разместите элементы управления, показанные на рис. 5.1.

Рис. 5.1.

Необходимо сделать так, чтобы при открытии Рабочей книги элемент управления Поле со списком заполнялся фамилиями со второго листа.

Далее при выборе фамилии из списка в текстовые поля должны автоматически вводиться соответствующие имя и отчество. При щелчке по командной кнопке «Печать» информация о выбранном лице должна переписываться на третий лист в очередную свободную строку.

Задание 5.4. Заполните второй лист Рабочей книги данными о сотрудниках, в соответствии с таблицей 5.2.

Таблица 5.2

A

B

C

1

Петров

Петр

Петрович

2

Иванов

Иван

Иванович

3

Сидоров

Николай

Николаевич

4

Третий лист заполните данными о подразделениях (таблица 5.3).

Таблица 5.3.

A

B

C

1

Администрация

2

Основное производство

3

Транспортный отдел

На первом рабочем введите необходимый текст и создайте элементы управления (рис. 5.2).

Рис.5.2

Запишите программный код так, чтобы при открытии книги первый список заполнялся данными о сотрудниках со второго листа, а второй - данными о подразделениях с третьего листа. По щелчку по командной кнопке данные должны переписываться на четвертый лист в очередную свободную строку.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]