ݺߣ

ݺߣShare a Scribd company logo
8
За новою програмою
Урок 39
Елементи для
введення даних:
текстове поле,
прапорець,
випадаючий список.
8
ЗапитанняРозділ 6
§ 6.5
1. Який вигляд мають команди повного і неповного
розгалуження в Object Pascal і як вони виконуються?
2. Які властивості напису і поля ви знаєте, що
визначають їх значення, як їх можна змінити?
3. Для чого
використовувалися в
програмах, з якими ви
працювали, прапорці, поля
з розкривними списками,
перемикачі?
8
Прапорці та їх використанняРозділ 6
§ 6.5
Розглянемо компонент прапорець. Значення деяких
його властивостей, зокрема властивості Checked (англ.
checked - перевірено), можуть бути використані в
логічному виразі в команді розгалуження.
Для розміщення на формі прапорця потрібно двічі
клацнути на кнопці TCheckBox (англ. checkbox - коробка
для перевірки) на вкладці Standard з компонентами.
8
Прапорці та їх використанняРозділ 6
§ 6.1
Після цього прапорець з'явиться у верхній лівій частині
форми, а його ім'я додасться до списку компонентів
проекту в полі Components вікна Інспектор об'єктів.
За потреби
прапорець можна
перетягнути в будь-
яке інше місце
форми.
8
Поле, його властивості
та обробники подій для поля
Властивості прапорця Caption, Top, Left, Name, Color,
Enabled, Visible, Font, Width, Height аналогічні до
відповідних властивостей напису.
Розділ 6
§ 6.1
Зокрема, значення
властивостей Width і Height
прапорця визначаються
довжиною тексту праворуч
від прапорця і розміром
шрифта, яким виведено
цей текст.
8
Прапорці та їх використанняРозділ 6
§ 6.5
Текст прапорця є значенням
властивості Caption прапорця. Цей
текст, як і для напису, можна
вводити безпосередньо на вкладці
Властивості в полі Caption, а
можна вводити у вікні Редактор
рядків, яке відкривається
вибором кнопки праворуч від
поля Caption.
8
Прапорці та їх використанняРозділ 6
§ 6.5
Властивість Checked прапорця може набувати одне з
двох значень:
true false
позначку прапорця
встановлено,
прапорець вибрано
позначку прапорця
не встановлено,
прапорець не вибрано
8
Прапорці та їх використанняРозділ 6
§ 6.5
Якщо на формі розміщено кілька прапорців, то серед
них можна:
вибрати один,
вибрати кілька,
не вибрати жодного,
вибрати всі.
Якщо прапорець
вибрано, то у нього
всередині з'являється
позначка
8
Прапорці та їх використанняРозділ 6
§ 6.5
Встановленням
позначок прапорців
можна встановити
значення однієї або
кількох властивостей
об'єкта з деякого
визначеного набору
властивостей.
8
Прапорці та їх використанняРозділ 6
§ 6.5
Розглянемо, як можна використати прапорці для
реалізації розгалуження.
Нехай, наприклад, нам
потрібно в ході виконання
проекту змінювати значення або
тільки однієї з властивостей
вікна (або заголовок, або колір,
або розміри), або кількох з них,
або не змінювати значення
жодної з них.
8
Прапорці та їх використанняРозділ 6
§ 6.5
Для цього розмістимо на формі кнопку і три прапорці.
Під час розміщення прапорців на формі для кожного з
них за замовчуванням значення властивості Checked
встановлюється false.
Оскільки під час виконання
проекту жодний прапорець може
бути не вибраний, то доцільно
залишити такі початкові значення
властивості Checked для всіх
прапорців.
8
Прапорці та їх використанняРозділ 6
§ 6.5
Створимо процедуру для опрацювання події Click для
кнопки і до її тексту помістимо такі три послідовні (не
вкладені одна в одну) команди розгалуження:
If CheckBox1.Checked
Then Form1.Caption := 'Заголовок змінений';
If CheckBox2.Checked Then Form1.Color := clRed;
If CheckBox3.Checked
Then begin
Form1.Width := 500;
Form1.Height := 200;
end;
8
Прапорці та їх використанняРозділ 6
§ 6.5
У кожній із цих команд,
незалежно одна від одної, буде
визначатися, вибрано
відповідний прапорець чи ні. І
залежно від цього, у кожній з них
будуть чи не будуть змінюватися
значення відповідних
властивостей вікна.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Ще одним компонентом, значення властивостей якого
можна використати в логічному виразі в команді
розгалуження, є поле з розкривним списком.
Для розміщення на формі поля з розкривним списком
потрібно двічі клацнути на кнопці TComboBox (англ.
combobox - поле зі списком) на вкладці Standard з
компонентами.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Після цього поле з розкривним списком з'явиться у
верхній лівій частині форми, а його ім'я додасться до
списку компонентів проекту в полі Components вікна
Інспектор об'єктів.
За потреби поле з
розкривним списком
можна перетягнути в
будь-яке інше місце
форми.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Властивості Top, Left, Height, Width, Name, Color,
Enabled, Visible, Font, Text поля з розкривним списком
повністю аналогічні до відповідних властивостей поля.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Для додавання рядків на етапі розробки інтерфейсу
потрібно:
1
•на вкладці Властивості вікна
Інспектор об'єктів в рядку
Items клацнути кнопку
2
•ввести потрібну інформацію у
вікні редактора вмісту
Редактор рядків;
3
•клацнути кнопку ОК.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Під час виконання проекту
можна відкрити цей список і
вибрати будь-який його
рядок. При цьому
відповідний текст потрапляє
в поле і стає значенням
властивості Text поля з
розкривним списком.
Розглянемо, як можна
використати поле з
розкривним списком у
команді розгалуження.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Нехай, наприклад, у ході виконання проекту потрібно
змінювати значення тільки однієї з властивостей вікна:
або заголовок або колір або розміри
Розмістимо на
формі поле з
розкривним
списком і створимо
відповідний список.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Розмістимо також на формі кнопку і складемо
процедуру - обробник події Click для цієї кнопки, під час
виконання якої вибиратимемо один з рядків
розкривного списку.
Залежно від вибраного
рядка змінюватимуться або
заголовок форми, або її
колір, або її розміри.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Виберемо перший пункт списку Заголовок і клацнемо
кнопку. Тоді під час виконання процедури значення
логічного виразу (ComboBox1.Text = 'Заголовок') =
true, а значить виконуватиметься команда
Form1.Caption := 'Заголовок
змінений', яка змінить
заголовок вікна, після чого
виконання команди
розгалуження і всієї
процедури закінчиться.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Якщо вибрати другий пункт списку Колір і клацнути
кнопку, то під час виконання процедури значення
логічного виразу (ComboBox1.Text = 'Заголовок') =
false. Тоді обчислюється значення логічного виразу
ComboBox1.Text = 'Колір', і
воно дорівнює true. А значить
виконуватиметься команда
Form1.Color := clRed, яка
змінить колір вікна, після
чого виконання команди
розгалуження і всієї
процедури закінчиться.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Якщо вибрати третій пункт списку Розміри і клацнути
кнопку, то під час виконання процедури значення
логічного виразу (ComboBox1.Text = 'Заголовок') =
false. Після цього обчислюється значення логічного
виразу ComboBox1.Text = 'Колір', і воно теж дорівнює
false. Після цього обчислюється значення логічного
виразу ComboBox1.Text = 'Розміри’, і воно дорівнює
true. А значить виконуватимуться команди Form1.Width
:= 600 і Form1.Height := 300, які змінять ширину і
висоту вікна, після чого виконання команди
розгалуження і всієї процедури закінчиться.
8
Поле з розкривним списком
та його використанняРозділ 6
§ 6.5
Якщо не вибрати жодного
пункту списку і клацнути
кнопку, то значення всіх
логічних виразів у розгалуженні
будуть false і в цьому випадку
не змінюватимуться значення
жодної властивості вікна і
виконання процедури
закінчиться.
8
Розгадайте ребусРозділ 6
§ 6.5
Прапорець
8
Дайте відповіді на запитання
1. Для чого використовують прапорці?
2. Які значення може мати властивість Checked для
прапорця?
3. Для чого використовують поле з розкривним
списком?
Розділ 6
§ 6.5
4. Як потрібно записувати команди
розгалуження, у яких використовується
значення властивості Checked для прапорців?
5. Як доцільно записати команди розгалуження,
у яких використовуються значення
властивостей поля з розкривним списком?
8
Працюємо за комп’ютером
Сторінка
212-213
Розділ 6
§ 6.5
8
Завдання 4.
Скласти програму, в якій
реалізовано головоломку Лойда: із
заданого набору чисел вибрати ті,
сума яких дорівнює 50.
8
1. Створіть новий проект.
2. Додайте на форму десять
компонентів CheckBox (див. рисунок).
Властивостям Caption компонентів
CheckBox надайте значень з набору
чисел, запропонованих С. Лойдом: 25, 27,
З, 12, 6, 15, 9, 30, 21, 19.
8
3. Додайте на форму два компоненти Label. Властивості
Caption компонента Label1 надайте значення «Сума
чисел:». Компонент Label2 призначений для виведення
суми чисел, які відповідають вибраним прапорцям.
4. Опишіть змінну S як глобальну:
var Form1:TForm1;
S: Integer;
84. Створіть процедуру обробки події OnCreate для форми.
5. Змінна S набуває значення 0 при завантаженні форми:
procedure TForm1.FormCreate(Sender: TObject);
begin
S := 0;
end;
6. Створіть спільний для всіх прапорців обробник події OnCIick. У програмному коді реалізується такий
алгоритм: якщо прапорець установлений, відповідне число додається до суми S, якщо прапорець
скинутий, відповідне число віднімається від суми S. Після цього значення суми виводиться в напис
І.аЬеІ2.
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
with (Sender as TCheckBox) do begin
If Checked Then
S := S + StrToInt(Caption)
Else s := S – StrToInt(Caption);
end;
Label2.Caption := IntToStr(S);
end;
7.Запустіть проект. Спробуйте розв’язати головоломку.
8
Домашнє завдання
Проаналізувати
§ 6.5, ст. 207-213
Розділ 6
§ 6.5
8
Дякую за увагу!
За новою програмою
Урок 39

More Related Content

8 клас урок 39

  • 1. 8 За новою програмою Урок 39 Елементи для введення даних: текстове поле, прапорець, випадаючий список.
  • 2. 8 ЗапитанняРозділ 6 § 6.5 1. Який вигляд мають команди повного і неповного розгалуження в Object Pascal і як вони виконуються? 2. Які властивості напису і поля ви знаєте, що визначають їх значення, як їх можна змінити? 3. Для чого використовувалися в програмах, з якими ви працювали, прапорці, поля з розкривними списками, перемикачі?
  • 3. 8 Прапорці та їх використанняРозділ 6 § 6.5 Розглянемо компонент прапорець. Значення деяких його властивостей, зокрема властивості Checked (англ. checked - перевірено), можуть бути використані в логічному виразі в команді розгалуження. Для розміщення на формі прапорця потрібно двічі клацнути на кнопці TCheckBox (англ. checkbox - коробка для перевірки) на вкладці Standard з компонентами.
  • 4. 8 Прапорці та їх використанняРозділ 6 § 6.1 Після цього прапорець з'явиться у верхній лівій частині форми, а його ім'я додасться до списку компонентів проекту в полі Components вікна Інспектор об'єктів. За потреби прапорець можна перетягнути в будь- яке інше місце форми.
  • 5. 8 Поле, його властивості та обробники подій для поля Властивості прапорця Caption, Top, Left, Name, Color, Enabled, Visible, Font, Width, Height аналогічні до відповідних властивостей напису. Розділ 6 § 6.1 Зокрема, значення властивостей Width і Height прапорця визначаються довжиною тексту праворуч від прапорця і розміром шрифта, яким виведено цей текст.
  • 6. 8 Прапорці та їх використанняРозділ 6 § 6.5 Текст прапорця є значенням властивості Caption прапорця. Цей текст, як і для напису, можна вводити безпосередньо на вкладці Властивості в полі Caption, а можна вводити у вікні Редактор рядків, яке відкривається вибором кнопки праворуч від поля Caption.
  • 7. 8 Прапорці та їх використанняРозділ 6 § 6.5 Властивість Checked прапорця може набувати одне з двох значень: true false позначку прапорця встановлено, прапорець вибрано позначку прапорця не встановлено, прапорець не вибрано
  • 8. 8 Прапорці та їх використанняРозділ 6 § 6.5 Якщо на формі розміщено кілька прапорців, то серед них можна: вибрати один, вибрати кілька, не вибрати жодного, вибрати всі. Якщо прапорець вибрано, то у нього всередині з'являється позначка
  • 9. 8 Прапорці та їх використанняРозділ 6 § 6.5 Встановленням позначок прапорців можна встановити значення однієї або кількох властивостей об'єкта з деякого визначеного набору властивостей.
  • 10. 8 Прапорці та їх використанняРозділ 6 § 6.5 Розглянемо, як можна використати прапорці для реалізації розгалуження. Нехай, наприклад, нам потрібно в ході виконання проекту змінювати значення або тільки однієї з властивостей вікна (або заголовок, або колір, або розміри), або кількох з них, або не змінювати значення жодної з них.
  • 11. 8 Прапорці та їх використанняРозділ 6 § 6.5 Для цього розмістимо на формі кнопку і три прапорці. Під час розміщення прапорців на формі для кожного з них за замовчуванням значення властивості Checked встановлюється false. Оскільки під час виконання проекту жодний прапорець може бути не вибраний, то доцільно залишити такі початкові значення властивості Checked для всіх прапорців.
  • 12. 8 Прапорці та їх використанняРозділ 6 § 6.5 Створимо процедуру для опрацювання події Click для кнопки і до її тексту помістимо такі три послідовні (не вкладені одна в одну) команди розгалуження: If CheckBox1.Checked Then Form1.Caption := 'Заголовок змінений'; If CheckBox2.Checked Then Form1.Color := clRed; If CheckBox3.Checked Then begin Form1.Width := 500; Form1.Height := 200; end;
  • 13. 8 Прапорці та їх використанняРозділ 6 § 6.5 У кожній із цих команд, незалежно одна від одної, буде визначатися, вибрано відповідний прапорець чи ні. І залежно від цього, у кожній з них будуть чи не будуть змінюватися значення відповідних властивостей вікна.
  • 14. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Ще одним компонентом, значення властивостей якого можна використати в логічному виразі в команді розгалуження, є поле з розкривним списком. Для розміщення на формі поля з розкривним списком потрібно двічі клацнути на кнопці TComboBox (англ. combobox - поле зі списком) на вкладці Standard з компонентами.
  • 15. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Після цього поле з розкривним списком з'явиться у верхній лівій частині форми, а його ім'я додасться до списку компонентів проекту в полі Components вікна Інспектор об'єктів. За потреби поле з розкривним списком можна перетягнути в будь-яке інше місце форми.
  • 16. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Властивості Top, Left, Height, Width, Name, Color, Enabled, Visible, Font, Text поля з розкривним списком повністю аналогічні до відповідних властивостей поля.
  • 17. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Для додавання рядків на етапі розробки інтерфейсу потрібно: 1 •на вкладці Властивості вікна Інспектор об'єктів в рядку Items клацнути кнопку 2 •ввести потрібну інформацію у вікні редактора вмісту Редактор рядків; 3 •клацнути кнопку ОК.
  • 18. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Під час виконання проекту можна відкрити цей список і вибрати будь-який його рядок. При цьому відповідний текст потрапляє в поле і стає значенням властивості Text поля з розкривним списком. Розглянемо, як можна використати поле з розкривним списком у команді розгалуження.
  • 19. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Нехай, наприклад, у ході виконання проекту потрібно змінювати значення тільки однієї з властивостей вікна: або заголовок або колір або розміри Розмістимо на формі поле з розкривним списком і створимо відповідний список.
  • 20. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Розмістимо також на формі кнопку і складемо процедуру - обробник події Click для цієї кнопки, під час виконання якої вибиратимемо один з рядків розкривного списку. Залежно від вибраного рядка змінюватимуться або заголовок форми, або її колір, або її розміри.
  • 21. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Виберемо перший пункт списку Заголовок і клацнемо кнопку. Тоді під час виконання процедури значення логічного виразу (ComboBox1.Text = 'Заголовок') = true, а значить виконуватиметься команда Form1.Caption := 'Заголовок змінений', яка змінить заголовок вікна, після чого виконання команди розгалуження і всієї процедури закінчиться.
  • 22. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Якщо вибрати другий пункт списку Колір і клацнути кнопку, то під час виконання процедури значення логічного виразу (ComboBox1.Text = 'Заголовок') = false. Тоді обчислюється значення логічного виразу ComboBox1.Text = 'Колір', і воно дорівнює true. А значить виконуватиметься команда Form1.Color := clRed, яка змінить колір вікна, після чого виконання команди розгалуження і всієї процедури закінчиться.
  • 23. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Якщо вибрати третій пункт списку Розміри і клацнути кнопку, то під час виконання процедури значення логічного виразу (ComboBox1.Text = 'Заголовок') = false. Після цього обчислюється значення логічного виразу ComboBox1.Text = 'Колір', і воно теж дорівнює false. Після цього обчислюється значення логічного виразу ComboBox1.Text = 'Розміри’, і воно дорівнює true. А значить виконуватимуться команди Form1.Width := 600 і Form1.Height := 300, які змінять ширину і висоту вікна, після чого виконання команди розгалуження і всієї процедури закінчиться.
  • 24. 8 Поле з розкривним списком та його використанняРозділ 6 § 6.5 Якщо не вибрати жодного пункту списку і клацнути кнопку, то значення всіх логічних виразів у розгалуженні будуть false і в цьому випадку не змінюватимуться значення жодної властивості вікна і виконання процедури закінчиться.
  • 26. 8 Дайте відповіді на запитання 1. Для чого використовують прапорці? 2. Які значення може мати властивість Checked для прапорця? 3. Для чого використовують поле з розкривним списком? Розділ 6 § 6.5 4. Як потрібно записувати команди розгалуження, у яких використовується значення властивості Checked для прапорців? 5. Як доцільно записати команди розгалуження, у яких використовуються значення властивостей поля з розкривним списком?
  • 28. 8 Завдання 4. Скласти програму, в якій реалізовано головоломку Лойда: із заданого набору чисел вибрати ті, сума яких дорівнює 50.
  • 29. 8 1. Створіть новий проект. 2. Додайте на форму десять компонентів CheckBox (див. рисунок). Властивостям Caption компонентів CheckBox надайте значень з набору чисел, запропонованих С. Лойдом: 25, 27, З, 12, 6, 15, 9, 30, 21, 19.
  • 30. 8 3. Додайте на форму два компоненти Label. Властивості Caption компонента Label1 надайте значення «Сума чисел:». Компонент Label2 призначений для виведення суми чисел, які відповідають вибраним прапорцям. 4. Опишіть змінну S як глобальну: var Form1:TForm1; S: Integer;
  • 31. 84. Створіть процедуру обробки події OnCreate для форми. 5. Змінна S набуває значення 0 при завантаженні форми: procedure TForm1.FormCreate(Sender: TObject); begin S := 0; end; 6. Створіть спільний для всіх прапорців обробник події OnCIick. У програмному коді реалізується такий алгоритм: якщо прапорець установлений, відповідне число додається до суми S, якщо прапорець скинутий, відповідне число віднімається від суми S. Після цього значення суми виводиться в напис І.аЬеІ2. procedure TForm1.CheckBox1Click(Sender: TObject); begin with (Sender as TCheckBox) do begin If Checked Then S := S + StrToInt(Caption) Else s := S – StrToInt(Caption); end; Label2.Caption := IntToStr(S); end; 7.Запустіть проект. Спробуйте розв’язати головоломку.
  • 33. 8 Дякую за увагу! За новою програмою Урок 39