Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Хід лекції




План.

Тема: Вплив хатньої роботи та трудової діяльності на подружні відносини (2 год.).

Мета: охарактеризувати вплив хатньої роботи та трудової діяльності на подружні відносини; сприяти розвитку у студентів навичок роботи з сім'єю; виховувати професійну компетентність.

Література:

1. Берг-Кросс Л. Терапия супружеских пар. – М., 2004.

2. Сатир В. Психотерапия семьи. – СПб., 2000.

3. Эйдемиллер Э. Г., Юстицкий В. В. Психология и психотерапия семьи. – СПб, 2002.

4. Кун Д. Основы психологии. Все тайны поведения человека. – М., 2003.

5. Коттлер Дж., Браун Д. Психологическое консультирование. – СПб., 2004.

 

1. Основні типи „взаємовпливу” хатньої роботи, трудової діяльності на сімейні відносини.

2. Допоміжні стратегії: робота на дому.

 

Життя вимагає від нас, щоб кожен день ми займалися справами, багато яких ми самі не обираємо. Є робота, яку потрібно виконувати по дому, а також робота, яка дозволяє нам заробляти засоби до існування. Обидва названих вида діяльності надають вплив на подружні відносини, і кожний з них ми будемо розглядати.

Хатня робота:

- робота по дому;

- догляд за дітьми;

- турбота про подружжя;

- ділові питання;

- розподіл хатніх обов'язків (встановлення пріоритетів, визначення задач, контроль за якістю);

- робота з емоціями.

Розподіл хатньої роботи.

Хатня робота не викликає особливого ентузіазму ані у чоловіків, ані у жінок. Порівнянні з іншими видами діяльності, які оплачуються, ця робота є більш рутинною, коли мотивація незначна, а зовнішніх символів заохочень обмаль.

Все ж хатня робота була і є переважно жіночою справою. Зі зміною тендерних визначень чоловіки починають виконувати все більше хатньої роботи. Однак більш справедливий розподіл хатньої праці розподіляється у перші роки життя, пізніше – на жінку, потрібні іноді роки, щоб запевнити чоловіка змінити установки.

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

Жінки, які перебували у законному шлюбі витрачали 40 годин щотижня на виконання хатньої роботи, жінки в громадському шлюбі – 34 години щотижня.

Одружені жінки виконували значно більше V хатньої роботи, ніж їх чоловіки, але в них також було набагато більше функцій в порівнянні з тими жінками, які були у громадському шлюбі. Очевидно, що у жінки після вступу у шлюб просто збільшується V роботи. З появою дітей цей V роботи, ще збільшується.

Пересічна американка в цілому виконує 70% загальних хатніх обов'язків. Майже 10% жінок стверджують, що вони виконують 100% хатньої роботи, в той час, як лише менш ніж 1% жінок говорять про те, що вони виконують 25% хатньої роботи.

Єдина робота по дому, яку воліють виконувати чоловіки – це догляд машини, а також прибирання снігу та стрижка газонів перед домівкою. Але вони виконують це не так часто, в порівнянні з такими рутинними операціями, як виготовлення їжі та прибирання.

На планування сім'ї впливають такі фактори як: освіта, прибутки, гендерні переконання та вік дітей.

Наприклад, жінки, які отримали кращу освіту та мають більш високі прибутки, виконують значно менші V роботи по дому, в порівнянні з іншими категоріями жінок у цьому випадку їх чоловіки виконують значно більше роботи по дому, в порівнянні з іншими.

Чим молодші діти, тим більше жінці доводиться здійснювати контроль, який поза усіляким сумнівом, поширюється і на чоловіка.

Чим пізніше жінки вступають до шлюбу, тим менше V хатньої роботи вони виконують (Пітман і Бланчард). Частково це пов'язане з тим, що ці жінки продовжували працювати та продовжували робити кар'єру і після шлюбу.

Справедливий розподіл хатніх обов'язків важливий для тих шлюбів, де обидва партнера працюють. Якщо справедливого розподілу немає (і жінки не дотримуються традиційних установок), наростає фізичний стрес + емоційний стрес.

Нерівність при розподілі праці часто представляють більший стрес, ніж реальний V роботи для виконання.

Дослідження Колтрейна і Іши-Кунтуа показали, що чоловіки, які стали батьками після 28 років, виконують значно більше хатньої роботи, ніж жінки, які стають батьками до цього віку. Батьки, які притримуються ліберальної ідеології стосовно гендерних розбіжностей та наявності часу, з віком виконують значну частину роботи по дому.

Після 50 років, коли діти уходять із сімей у чоловіків відмічаються новий спалах активності стосовно ведення хатньої роботи, також після виходу на пенсію збільшується їх хатня активність. Жінки після пенсії, ще в більшій ступені пов'язані з процесом сумісного прийняття рішень, участю обох членів, подружньою та емоційною рівністю у відносинах, ніж в перші роки існування шлюбу.

Гринстейн провів ряд досліджень батьків 4 – 5 річних дітей. Він дійшов висновку, що чим вище рівень прибутку в сім'ї, тим менш сприятливо це впливало на дітей. У групі з самими високими прибутками батьки, якщо обидва працюють, а не проводили час дома, мали дітей з різними проблемами у поведінці.

В групі з самими низькими прибутками батьки мали також багато проблем незалежно від того, чи проводили вони весь час дома, чи працювали.

Згідно Грінстейну, це відкриття пояснюється тим, що сім'ї з високим рівнем прибутку потенційно можуть запропонувати більше емоційної підтримки та емоційного стимулювання своїм дітям турботи, яка їм куплялась, була не стільки доброю, як та, яку вони могли б їм запропонувати.

Трудова діяльність та її вплив на подружні відносини.

Чим більше часу подружжя проводить на роботі, тим менше часу подружжя проводить разом. Це зачіплює кожний аспект сімейного життя. Якщо подружжя працює в різний час вірогідність розлучення збільшується.

Доля прибутку дійсно впливає на задоволення подружжя, але не так, як це можна передбачити. Коли збільшуються прибутки дружини, згідно деяким дослідженням, шлюби стають нестабільними і є вірогідність розлучення. Вірно і те, що коли жінки не можуть утримати себе, менше думати про припинення шлюбу.

Фрейд стверджує про взаємовплив кар'єри і роботи на подружнє задоволення.

Типи взаємозв'язку роботи і сім'ї.

1. Незалежний – вважає, що робота і сім'я незалежні (15 – 20%).

2. Конфліктний – (менше 10%) конфлікт між роботою і сімейним життям.

3. Інструментальний – (менше 10%) робота є засобом, який дозволяє людині зробити сімейне життя більш сприятливим.

4. Компенсуючий – кожна область може компенсувати те, що недостає в іншій області. Чим менше задоволена людина роботою, тим більше вона схильна розглядати сім'ю як область реалізації та задоволення і навпаки.

5. Взаємовпливаючий – є взаємовпливом між роботою і сім'єю. Тобто стрес, отриманий на роботі відбивається і на сім'ї. І навпаки.

Програма втручань:

- робота на дому;

- релаксація;

- перерозподіл сімейних обов'язків та стандартів;

- перегляд ступеню самовіддачі на роботі.

  1. Використання об’єкта ListBox.

У багатьох створюваних додатках використовують можливості масивів. Для доступу до елементів масивів часто застосовують елемент управління ListBox. Елемент управління ListBox (список) створюється за допомогою кнопки Список. Цей елемент потрібен для зберігання списку значень. Зі списку користувач може вибрати одне або кілька значень, які в подальшому можуть використовуватися в тексті програми.

Найчастіше використовувані властивості елемента керування ListBox:

· ListIndex - повертає номер поточного елемента списку, нумерація елементів списку починається з нуля;

· Listcount - повертає число елементів списку;

· TopIndex - повертає елемент списку з найбільшим номером;

· columnCount - встановлює число стовпців у списку;

· textcolumn - встановлює стовпець у списку, елемент якого повертається властивістю text;

· text - повертає обраний у списку елемент;

· List (row, column) - повертає елемент списку, що стоїть на перетині зазначених рядка і стовпця;

· RowSourse - встановлює діапазон, що містить елементи списку;

· ControlCourse - встановлює діапазон (осередок), куди повертається вибраний елемент зі списку;

· multiSelect - встановлює спосіб вибору елементів списку. Допустимі значення:

· fmMultiSelectSingle - вибір тільки одного елемента;

· fmMultiSelectMulti - дозволений вибір кількох елементів за допомогою або клацання, або натисканням клавіші Пробіл;

· fmMultiSelectExtended - дозволено використання клавіші shift при виборі ряду послідовних елементів списку;

· selected - допустимі значення: True (якщо елемент списку вибраний) і False (в іншому випадку), використовується для визначення виділеного тексту, коли властивість multiSelect має значення fmMultiSelectMulti або fmMultiSelectExtended;

· columnWidths - встановлює ширину стовпців списку.

Синтаксис

columnWidths = string,

де String - рядок, що встановлює ширину стовпців.

У прикладі встановлюється ширина кожного з трьох стовпців списку:

With ListBox1

ListBox1.ColumnCount = 3

ColumnWidths = "20; 30; 30"

end With

· columnHeads - допустимі значення: True (виводяться заголовки стовпців розкриває список) і False (в іншому випадку);

· listStyle - допустимі значення:

· fmListStylePlain - обраний елемент зі списку виділяється кольором;

· fmListStyleOption - перед кожним елементом у списку розташовується прапорець і вибір елемента зі списку відповідає установці цього прапорця;

· boundColumn - встановлює тип, що повертається властивістю Value. А саме:

Ø якщо властивість boundColumn дорівнює 0, то властивість value повертає індекс обраного рядка;

Ø якщо властивість boundColumn приймає значення з діапазону від 1 до кількості стовпців у списку, то властивість value повертає елемент з обраної рядка, що стоїть в стовпці, визначеному властивістю boundcolumn.

Найбільш часто використовувані методи елемента керування ListBox

§ clear - видаляє всі елементи зі списку;

§ RemoveItem (index) - видаляє зі списку елемент з вказаним номером, де index - номер елемента;

§ AddItem ([ item [, varIndex ]]) - додає елемент у список, де item - елемент (рядковий вираз), що додається до списку, і varIndex – номер елемента що додається.

Заповнити список можна одним з таких способів.

v Поелементно, якщо список складається з однієї колонки

With ListBox1

ListBox1.AddItem «червень»

ListBox1.AddItem «липень»

ListBox1.AddItem «серпень»

ListIndex = 0

End With

v Масивом, якщо список складається з однієї колонки

With ListBox1

ListBox1.List = Array («червень», "липень", "серпень")

ListIndex = 1

End With

v З діапазону A1: B4, в який попередньо введені елементи списку. Результат вибору (індекс обраного рядка) виводиться в клітинку С1

With ListBox1

ColumnCount = 2

RowSourse = «A1: B4»

ControlSourse = «C1»

BoundColumn = 0

End With

v Поелементно, якщо список складається з декількох колонок, наприклад двох

With ListBox1

ColumnCount = 2

AddItem «червень»

List (0.1) = "сесія"

AddItem «липень»

List (1.1) = "канікули"

AddItem «серпень»

List (2.1) = "відпрацювання"

End With

v Масивом, якщо список складається з декількох колонок, наприклад двох

Dim A (2.1) As string

A (0.0) = «червень»

A (0.1) = «сесія»

A (1.0) = «липень»

A (1.1) = «канікули»

A (2.0) = «серпень»

A (2.1) = «відпрацювання»

With ListBox1

ColumnCount = 2

List = A

End With

Завдання

Створити програму, яка при введенні імені користувача і числа від 1 до 10 в текстові поля форми видає в мітку label1 передбачення в залежності від введеного значення.

При розробці програми використовувати одновимірний масив, оголошений у процедурі Fortuna, що містить всі можливі прогнози.

Технологія виконання

Створіть форму.

Пропишіть обробники подій натискання на кнопки «Вивести пророкування» і «Закрити».

При обробці процедури натискання кнопки Вивести можна спиратися на нижченаведений лістинг.

Примітка

Зверніть увагу на створення процедури, яка містить масив прогнозів, і виклик цієї процедури з процедури натискання кнопки «Вивести пророцтво», враховуючи «захист від дурня».

Sub fortune (a As String, b As Integer)

Dim today (1 To 10)

today (1) = «Ви станете багатим і знаменитим за 15 хвилин»

today (2) = «Вам належить обід з незнайомцем»

today (3) = «Вартість Ваших вкладів подвоїться!»

today (4) = «Ви отримаєте великий букет від свого шанувальника»

today (5) = «Ви встигнете на пару»

today (6) = «Усі Ваші мрії збудуться»

today (7) = «Вам повернуть борг»

today (8) = «Ви вивчите лекцію і відповісте на опитування»

today (9) = "Ви зустрінете свого давнього знайомого»

today (10) = «На Вас звернуть увагу»

Label3.Caption = a & «, Вас чекає наступне:» & today (b)

End Sub

 

Private Sub CommandButton1_Click ()

Dim a As String

Dim b As Integer

a = TextBox1.Text

b = Val (TextBox2.Text)

If b> 0 And b <= 10 Then

Call fortune (a, b)

Else: Label3.Caption = «Ви ввели не те число!»

End If

End Sub

Відкомпілюйте програму.

Відкрийте програму на виконання.

Задача.

Створити форму, в текстові поля якої вводяться ім'я та пароль. Якщо пароль введено правильно, то користувач отримує доступ до списку деякої групи, що відображається в елементі listbox, при цьому видається повідомлення про допуск користувача до списку. Список організується програмно.

Технологія виконання

Створіть форму.

Форма завдання в робочому стані. Повідомлення про допуск

Перейменуйте форму з Name на frmOne. Для цього активізуйте форму (клацніть на ній), перейдіть у вікно властивостей об'єкта (properties), виділіть властивість Name (перший рядок) і пропишіть frmOne.

Створіть текстові поля textbox1 і textbox2. Перше буде використовуватися для введення імені, друге - для введення пароля, тому перейменуйте їх на txtName і txtPassword (аналогічно пункту 3).

Як правило, пароль що вводиться не відображається в полі. Щоб символи пароля що вводяться замінялися зірочками, виділіть поле пароля, потім у вікні Properties знайдіть властивість PasswordChar і задайте для нього значення «*».

Додайте кнопки. Перейменуйте першу кнопку на btnOK. Кнопка OK повинна бути кнопкою за замовчуванням. Це означає, що на натиснення клавіші Enter форма повинна реагувати так само, як і на клацання цієї кнопки. Для цього змініть значення властивості Default кнопки btnOK на True.

Перейменуйте другу кнопку на btnCancel. Клацання кнопки Cancel зазвичай еквівалентний натискання клавіші Escape. Щоб у вашому вікні було саме так, задайте значення «True» для властивості Cancel.

Створіть процедуру закриття форми.

Створіть процедуру роботи кнопки ОК.

У заготівлі процедури

Private Sub btnOK_Click ()

End Sub

вставте оператор MsgBox Txtname & «отримав (ла) доступ». У цьому операторі текст, введений в поле txtName, об'єднується з пояснювальним рядком і виводиться в інформаційному вікні.

Створіть процедуру для перевірки пароля. Закриємо доступ до кнопки OK, поки не введений вірний пароль. Для цього змініть властивість Enabled кнопки OK на False (доступ до кнопки закритий) і введіть нову процедуру:

Private Sub CheckOK ()

Const pas = «abc» 'Пароль

If Txtpassword = pas Then 'Якщо текст в полі Txtpassword збігається з паролем, то

btnOK.Enabled = True 'доступ до кнопки OK відкритий

Else 'інакше

btnOK.Enabled = False 'доступ до кнопки OK закрито

End If

End Sub

 

Процедура повинна запускатися при введенні нового пароля. Для цього у вікні форми клацніть двічі друге текстове поле (призначене для пароля). У процедуру що з'явилася

 

Private Sub Txtpassword_Change ()

 

End Sub

 

введіть єдину команду CheckOK, яка при внесенні будь-яких змін в поле пароля буде запускати процедуру перевірки пароля.

Заповніть список групи. Розташуйте на формі елемент управління ListBox. За замовчуванням його ім'я ListBox1. Залишимо його в такому вигляді. Заповнити список можна в операторі With:

 

With ListBox1

List = Array («Іванова Марина», «Гончарова Олена», «Зотова Тетяна», «Крінченко Світлана», «Орлов Сергій», «Петров Олександр»)

End With

Тут List - властивість елементу ListBox, яке є масивом. Вставте цей оператор у вже наявну процедуру btnOK _ Click.

Перевірка роботи форми. Після запуску форми введіть своє ім'я і вірний пароль. Повинна стати доступною кнопка ok. Після її натискання з'являються повідомлення «Ім'я отримав (а) доступ» і заповнений список. Після натискання кнопки Закрити форма повинна закритися.

 

  1. Використання об’єктів OptionButton та Frame.

Елемент управління OptionButton (перемикач) створюється за допомогою відповідного елемента. Він дозволяє вибрати один з декількох взаємовиключних параметрів або дій. Перемикачі звичайно відображаються групами, забезпечуючи можливість вибору альтернативного варіанта.

Елемент управління Frame (рамка) створюється за допомогою відповідного елемента. Він використовується для візуального угруповання елементів управління. Основною властивістю рамки є caption, що відображає напис рамки.

Приклад

Створити програму, яка дозволяє при виділенні зі списку форми декількох чисел здійснювати сумування, знаходити добуток або середнє значення в залежності від вибору дії (операції).

Натискання кнопки «Обчислити» має привести до виконання обраної операції над вибраними числами та виведення результату в полі «Результат».

Розроблена форма завдання в робочому стані

Технологія виконання

Обговоримо, як наведена нижче програма вирішує перелічені пункти завдання і що відбувається в програмі.

UserForm_Initialize

Активізує діалогове вікно

Забороняє введення даних в поле Результат.

Пов'язує з кнопками Обчислити і Закрити, а також з перемикачами спливаючі підказки

Натискання кнопки Обчислити запускає на виконання процедуру CommandButton 1_ Click

Визначає, який перемикач вибраний. В залежності від обраного перемикача здійснює дію над вибраними в списку числами. Знайдене число виводиться у полі Результат

Натискання кнопки Закрити запускає на виконання процедуру CommandButton 2_ Click

Закриває діалогове вікно

Процедура натискання кнопки «Обчислити» здійснює обчислення з елементами списку в залежності від обраної операції. Вводяться змінні n і i, де n грає роль лічильника числа обраних елементів зі списку, а i - допоміжна змінна. Також вводяться змінні, які будуть містити результат обчислень: сума, добуток і середнє. Всі отримані обчислення присвоюються змінній Результат, яка і видається в текстове поле.

Процедура натискання кнопки Обчислити

 

Private Sub CommandButton1_Click ()

Dim i As Integer

Dim n As Integer

Dim Сума As Double

Dim Добуток As Double

Dim Середнє As Double

Dim Результат As Double

'При виборі першого перемикача обчислюється сума

If OptionButton1.Value = True Then

Сума = 0

With ListBox1

For i = 0 To.ListCount - 1

If.selected (i) = true then

Сума = Сума +. List (i)

End if

Next i

End With

Результат = Сума

End If

'При виборі другого перемикача обчислюється Добуток обраних елементів

If OptionButton2.Value = True Then

Добуток = 1

With ListBox1

For i = 0 To.ListCount - 1

If.Selected (i) = True Then

Добуток = Добуток *. List (i)

End if

Next i

End With

Результат = Добуток

End If

'При виборі третього перемикача обчислюється середнє арифметичне

If OptionButton3.Value = True Then

Середнє = 0

n = 0

With ListBox1

For i = 0 To.ListCount - 1

If.Selected (i) = True Then

n = n +1

Середнє = Середнє +. List (i)

End if

Next i

End With

Результат = Середня / n

End If

'Отримане значення Результат виводиться в текстове поле

TextBox1.Text = CStr (Format (Результат, «Fixed»))

End Sub

 

Процедура натискання кнопки «Закрити»

Private Sub CommandButton2_Click ()

UserForm1.Hide

End Sub

Процедура ініціалізації діалогового вікна полягає в заповненні списку і виведення його на формі, організації спливаючих підказок, заборону введення тексту в поле результату на формі.

 

Private Sub UserForm_Initialize ()

With ListBox1

List = Array (1, 3, 4, 5, 6, 7, 8, 10)

Listlndex = 0 'початкова індексація масиву

MultiSelect = fmMultiSelectMulti

End With

'Початковий вибір перемикача Сума при ініціалізації діалогового вікна і завдання тексту спливаючих підказок у перемикачів With OptionButton1.Value = True

ControlTipText = "Сума вибраних елементів"

End With

OptionButton2.ControlTipText = "Добуток обраних елементів"

OptionButton3.ControlTipText = «Середнє значення вибраних елементів»

'Поле Результат не доступно для користувача

TextBox1.Enabled = False

'Призначення клавіші <Enter> функції кнопки Обчислити і завдання тексту підказки

With CommandButton1

Default = True

ControlTipText = «Знаходження результату»

End With

'Призначення клавіші <Esc> функції кнопки Закрити і завдання тексту підказки

CommandButton2.Cancel = True

'Завдання заголовка користувальницької форми

UserForm1.Caption = «Операції над елементами списку»

UserForm1.Show

End Sub

Примітка. Цікавою особливістю приведеної процедури ініціалізації UserForm_initialize є те, що заголовок діалогового вікна вводиться програмно за допомогою властивості Caption, а не вручну за допомогою вікна Properties.

 

Лістінг програми повністю

 

Private Sub UserForm_Initialize()

With ListBox1

ListBox1.List = Array(1, 3, 4, 5, 6, 7, 8, 10)

Listlndex = 0 'початкова індексація масиву

ListBox1.MultiSelect = fmMultiSelectMulti

End With

'Початковий вибір перемикача Сума при ініціалізації діалогового вікна і завдання тексту спливаючих підказок у перемикачів

With OptionButton1.Value = True

ControlTipText = "Сума вибраних елементів"

End With

OptionButton2.ControlTipText = "Добуток обраних елементів"

OptionButton3.ControlTipText = "Середнє значення вибраних елементів"

'Поле Результат не доступно для користувача

TextBox1.Enabled = False

'Призначення клавіші <Enter> функції кнопки Обчислити і завдання тексту підказки

With CommandButton1

CommandButton1.Default = True

CommandButton1.ControlTipText = "Знаходження результату"

End With

'Призначення клавіші <Esc> функції кнопки Закрити і завдання тексту підказки

CommandButton2.Cancel = True

'Завдання заголовка користувальницької форми

UserForm4.Caption = "Операції над елементами списку"

UserForm4.Show

End Sub

 

Private Sub CommandButton1_Click()

Dim i As Integer

Dim n As Integer

Dim Сума As Double

Dim Добуток As Double

Dim Середн As Double

Dim Результат As Double

'При виборі першого перемикача обчислюється сума

If OptionButton1.Value = True Then

Сума = 0

With ListBox1

For i = 0 To.ListCount - 1

If.Selected(i) = True Then

Сума = Сума +.List(i)

End If

Next i

End With

Результат = Сума

End If

'При виборі другого перемикача обчислюється Добуток обраних елементів

If OptionButton2.Value = True Then

Добуток = 1

With ListBox1

For i = 0 To.ListCount - 1

If.Selected(i) = True Then

Добуток = Добуток *.List(i)

End If

Next i

End With

Результат = Добуток

End If

'При виборі третього перемикача обчислюється середнє арифметичне

If OptionButton3.Value = True Then

Середн = 0

n = 0

With ListBox1

For i = 0 To.ListCount - 1

If.Selected(i) = True Then

n = n + 1

Середн = Середн +.List(i)

End If

Next i

End With

Результат = Середн / n

End If

'Отримане значення Результат виводиться в текстове поле

TextBox1.Text = CStr(Format(Результат, "Fixed"))

End Sub

 

Private Sub CommandButton2_Click()

UserForm4.Hide

End Sub

 

Private Sub UserForm_Click()

 

End Sub

 

 

Задача.

Розробити програму знаходження середнього бала студентів, обраних зі списку в діалоговому вікні «Середній бал». Список містить прізвище студента і його середній бал (двовимірний масив).

Розроблена форма завдання в робочому стані

Додатково для кожного елемента керування слід прописати процедури для здійснення спливаючих підказок.

При виконанні завдання спирайтеся на наведені нижче примітки.

 

Примітка. Зверніть увагу на те, що даний приклад вимагає введення двовимірного списку: стовпця прізвищ та стовпця оцінок. Фактично різниця полягає лише в тому, що в наведеному прикладі масив ListBox1.List, відповідальний за список елементів, був одномірним, а в даному випадку повинен бути двовимірним. Зробити це можна двома способами:

v безпосередньо заповнити двовимірний масив ListBox1.List;

v задати довільний двовимірний масив, а потім привласнити його значення для ListBox1.List.

Відповідно, для розрахунку середнього балу слід скористатися тільки елементами другого стовпця масиву, то є друга координата масиву ListBox1.List повинна бути фіксована на 1 (якщо індексація масиву покладена з нуля) або на 2 (якщо індексація масиву покладена з 1).

 

  1. Використання об’єкта MultiPage.

Для доступу до набору елементів управління діалогового вікна можна використовувати колекцію Controls, що включає всі елементи управління вікна. Кожен елемент управління має в цій колекції індекс, значення якого може бути числом або рядком. Для першого елемента управління індекс дорівнює 0. Числові індекси визначаються порядком розміщення елементів в колекції. Строкове значення індексу відповідає імені (Name) елемента.

Приклад. Створити форму, що має п'ять елементів: мітка, текстове поле, список, дві кнопки. Ввести в текстове поле і список за умовчанням текст «поле 1», «список 1» (властивість text відповідно у кожного елемента). Перша кнопка «Натисни» виконує наступну дію: викликається діалогове вікно, в якому запитується дозвіл на видалення чергового елемента форми (їх п'ять). Відповідь «так» чи «ні» виконує відповідну дію. Кнопка «Закрити» закриває діалогове вікно.

Примітка. Використовуючи колекцію Controls, програмно в циклі організувати приховування (не видалення!) Елементів управління діалогового вікна MyForm (властивість Name форми).

Технологія виконання

1. Відкрийте програму Word, збережіть новий документ.

2. Створіть форму в режимі конструктора (мал. 42).

3. Обробіть кнопки Натисни і Закрити.

Кнопка Натисни

Private Sub CommandButton1_Click ()

For Each Ctrl In myForm.Controls 'цикл по всіх елементах управління

msgCode = vbYesNo + vbQuestion

'Питання про чергове елементі управління:

Answer = MsgBox (prompt: = "Cкрить елемент" & Ctrl.Name,

Buttons: = msgCode, Title: = "Bonpoc")

If Answer = vbYes Then 'відповідь «Так»

Ctrl.Visible = False 'приховати черговий елемент

End If

Next Ctrl

End Sub

Кнопка Закрити

Private Sub CommandButton2_Click ()

Unload Me

End Sub

 

4. Відкомпілюйте додаток.

5. Запустіть на виконання (рис. 43, 44, 45).

Примітка. Приховування непотрібних елементів у формі можна зробити і іншим способом (наприклад, якщо в формі занадто багато елементів, то до потрібного добиратися по циклу нераціонально). Для цього використовують властивість Click елементів управління.

Початковий запуск форми і виклик процедури кнопки Натисни

 

Виконання приховування елемента label1 і наступний запит

 

Вид форми перед видаленням останнього елемента управління

 

В цьому випадку необхідно тільки клацнути по потрібному елементу і прописати код, для кожного елемента свій:

Private Sub Label1_Click ()

msgCode = vbYesNo + vbQuestion

Answer = MsgBox (prompt: = "Cкрить елемент",

Buttons: = msgCode, Title: = "Питання")

If Answer = vbYes Then

Label1.Visible = False

Else

Label1.Visible = True

End If

End Sub

 

В результаті робота форми буде більш раціональною (рис. 46).

 

 

Робота форми по клацанню приховуваного елемента

Набір сторінок MultiPage

Елемент управління MultiPage об'єднує кілька незалежних діалогових вікон - сторінок (вкладок). Заголовки сторінок зазвичай видно на одній зі сторін елемента на їх закладках, а перехід на сторінку відбувається після клацання по її закладці. Цей простий перехід з однієї сторінки на іншу і робить MultiPage зручним засобом для представлення різнорідних даних, що відносяться до одного об'єкту. Такі дані в «паперових» офісах зберігаються зазвичай в окремих папках і утворюють справи, досьє і т. д. Кожна сторінка з Multipage - це об'єкт типу Page, а всі вони включені в колекцію Pages (сторінки). При створенні елемента MultiPage в нього автоматично поміщаються дві сторінки з іменами Page1 і Раgе2. Імена можна змінювати, присутня можливість додавання і нових сторінок. Розглянемо основні властивості набору сторінок.

• Властивість count визначає, яка кількість сторінок повертається.

• Властивість value для елемента multipage визначає номер поточної активної сторінки в колекції pages.

• Властивість selecteditem (його можна тільки читати) повертає поточну активну сторінку (як об'єкт). Її можна використовувати для зчитування та встановлення властивостей цієї сторінки і елементів управління що входять до неї.

• Властивість style визначає, в якому вигляді подаються заголовки сторінок. За замовчуванням вона дорівнює fmtabstyletabs = 0 і задає уявлення заголовків у вигляді закладок в смузі заголовків. Кожна закладка із заголовком знаходиться всередині кордонів своєї сторінки. Якщо значення fmtabstylebuttons = 1, то заголовок кожної сторінки знаходиться на окремій кнопці, розташованій в смузі заголовків. Перехід на сторінку відбувається після вибору кнопки з її заголовком. Якщо ж значення fmtabstylenone = 2, то смуга з заголовками сторінок на екран не виводиться.

• Властивість taborientation задає розташування смуги з заголовками сторінок (табл. 1).

Таблиця 1

• Булева властивість multirow дозволяє створити декілька смуг з закладками (за замовчуванням значення дорівнює false, що відповідає одній смузі закладок).

• Властивості tabfixedheight і tabfixedwidth встановлюють або повертають висоту і ширину закладки (у точках). При значенні 0 ширина закладок встановлюється автоматично, так щоб у кожній закладці містилася її назва і займала всю ширину елемента. При значеннях більше 0 у всіх закладок однакові розміри, задані властивістю TabFixedWidth. Мінімально можливий розмір закладки - 4 точки.

Для того щоб редагувати властивості елемента MultiPage, необхідно виділити цей елемент так, щоб рамка навколо елемента виділилася точками (рис. 47). Для цього клацніть по самій рамці, якщо вона виділена чорної штрихуванням.

Рамка елемента multipage

Якщо необхідно встановити властивості самих вкладок, необхідно клацнути по ним, після чого рамка стане виділятися чорної штрихуванням (рис. 48).

Рамка елемента page

Якщо необхідно додати ще одну вкладку в режимі конструктора, то необхідно натиснути правою кнопкою миші по останній вкладці (сторінці) і вибрати команду New Page.

Додавання нової сторінки

Якщо необхідно перейменувати сторінку, ввести спливаючі підказки і встановити номер активної за замовчуванням сторінки, необхідно вибрати команду Rename, в результаті якої з'являється діалогове вікно, де встановлюються перераховані властивості.

Встановлення властивостей вкладки

Приклад. Створити форму, що включає в себе ряд вкладок (сторінок), що містять питання деякого тесту. На кожній сторінці знаходяться чергове запитання і кнопка «Відповідь», яка фіксує вибір правильного (неправильного) відповіді. Після переходу на наступну сторінку (клацання по корінця сторінки з відповідним ім'ям) дії повторюються. Підсумкова сторінка містить кнопку «Результат», яка виводить правильність відповідей і суму набраних балів (1 правильна відповідь = 1 бал).

Властивості в дії

 

Створити програму, що виконує всі вимоги прикладу.

Технологія виконання

1. Відкрийте програму Word і збережіть документ.

2. Перейдіть в редактор VBA і створіть форму, яка містить 4 сторінки (рис. 52).

Перша сторінка тесту

 

3. Оформіть першу сторінку і обробіть кнопку «Відповідь».

Dim a As Integer

Private Sub CommandButton1_Click ()

If OptionButton3.Value = True Then

a = a + 1

Label11.Caption = «Відповідь вірний»

Else

Label11.Caption = «Oтвет невірний»

End If

End Sub

 

4. Оформіть другу сторінку тесту (рис. 53) і обробіть кнопку «Відповідь».

Private Sub CommandButton2_Click ()

If OptionButton5.Value = True Then

a = a + 1

Label12.Caption = «Відповідь вірний»

Else

Label12.Caption = «Відповідь невірний»

End If

End Sub

 

Друга сторінка тесту

 

5. Оформіть третю сторінку тесту (рис. 54) і обробіть кнопку «Відповідь».

Третя сторінка тесту

 

Private Sub CommandButton3_Click ()

If OptionButton10.Value = True Then

a = a + 1

Label13.Caption = «Відповідь вірна»

Else

Label13.Caption = «Відповідь невірна»

End If

End Sub

 

6. Оформіть четверту сторінку тесту і обробіть кнопку «Результат».

Private Sub CommandButton4_Click ()

Label15.Caption = "ви набрали" & a & «бал (а)»

End Sub

Підсумкова сторінка тесту

 

Примітка. Нагадуємо, що всі пропоновані листинги зразкові і їх можна і потрібно редагувати на свій розсуд.

7. Відкомпілюйте програму і запустіть на виконання.




Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 413; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.