Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Розробка проекту «Фізичний конвектор»Содержание книги
Поиск на нашем сайте
Завдання. Створити програму, яка переводитиме величини довжини, швидкості та часу в системні одиниці. Аналіз проекту Для реалізації проекту необхідно мати компонент, який дає змогу працювати з таким списком, який би за необхідності розгортався, адже в цьому проекті необхідний список має завантажуватись програмно, залежно від вибору користувача. Тут необхідний компонент СomboBox (вкладка палітри компонентів Standart) – комбінований список. Для завантаження потрібного списку скористаємось методом LoadFromFile цього компонента. Компонент СomboBox можна також використовувати для введення даних, оскільки являє собою об’єднання поля введення та поля зі списком. Для створення цього проекту необхідно створити в будь-якому текстовому редакторі три текстові файли з різними варіантами розмірностей трьох фізичних величин (кожну розмірність розташувати в новому рядку): Файл dov.txt файл shv.txt файл chas.txt Км; км/год; год; Дм; км/хв; хв. См; м/год; Мм; м/хв; Ці текстові файли будуть завантажуватись у список компонента СomboBox2 під час виконання програми.
ХІД РОБОТИ Алгоритм розробки проекту 1. Створити папку С:\Delphi\lab_7_2. 2. Завантажити середовище візуального програмування Delphi. 3. Розмістити на формі візуальні компоненти Label1 - Label5, Edit1, Edit2, СomboBox1, СomboBox2, BitBtn1, BitBtn2 з властивостями, як у таблиці 2. Таблиця 2
Пояснення: · Властивість ItemIndex компонентів ComboBox1 та СomboBox2 передбачає номер рядка у списку (нумерація починається з нуля); · Після вибору певного типу величини до списку компонента СomboBox2 завантажується один з файлів dov.txt або shv.txt або chas.txt; · Глобальна змінна r (вона описана на верхньому рівні програми) набуває значення потрібної розмірності системних одиниць; · Після вибору значення зі списку типів величин курсор встановлюється на поле Edit1 – робота методу edit1.setfocus. 4. Для можливості вибору мишою із наведеного списку певного значення типу величини створити для компонента ComboBox1 процедуру обробки події OnClick: procedure TForm1.ComboBox1Click(Sender: TObject); var nom:byte; begin nom:=combobox1.ItemIndex; combobox2.ItemIndex:=0; case nom of 0: begin combobox2.Items.LoadFromFile('dov.txt'); combobox2.ItemIndex:=0; r:='m'; end; 1: begin combobox2.Items.LoadFromFile('shv.txt'); combobox2.ItemIndex:=0; r:='m/c'; end; 2: begin combobox2.Items.LoadFromFile('chas.txt'); combobox2.ItemIndex:=0; r:='c'; end; end; edit1.setfocus; end; 5. Для об’єкта Edit1 забезпечити перехід на наступне поле після натискання клавіші Enter після введення даних. Для цього створити процедуру обробки події OnKeyPress: if key=#13 then combobox2.SetFocus; 6. Для компонента СomboBox2 забезпечити можливість вибору розмірності зі списку та переведення введеної величини у величину в системних одиницях. Для цього створити процедуру сс var nom1, nom2:byte; vel,result:real; v:string; begin vel:=strtofloat(edit1.Text); nom1:=combobox1.ItemIndex; nom2:=combobox2.ItemIndex; case nom1 of 0: case nom2 of 0: result:=vel*1000; 1: result:=vel/10; 2:result:=vel/100; 3:result:=vel/1000; end; 1: case nom2 of 0: result:=vel*1000/3600; 1: result:=vel/1000/60; 2:result:=vel/3600; 3:result:=vel/60; end; 2:case nom2 of 0:result:=vel*3600; 1: result:=vel*60; end; end; edit2.Font.Color:=clred; str(result:5:3,v); edit2.Text:=v+' '+r; bitbtn1.Enabled:=true; end;
7. Для кнопки «Очистити» необхідно стоворити процедуру обробки події OnClick для компонента BitBtn1: procedure TForm1.BitBtn1Click(Sender: TObject); var i:integer; begin combobox1.Text:=''; combobox2.Text:=''; edit1.Text:=''; edit2.Text:=''; for i:=1 to 3 do begin combobox1.Items.Delete(combobox1.ItemIndex); end; end; 8. Зберегти проект у папці С:\Delphi\lab_7_2. 9. Запустити проект та перевірити правильність його виконання. Питання для самоконтролю: 1. Що таке список? 2. Яка властивість визначає кількість рядків, які одночасно відображаються в списку, що розкривається? 3. Який компонент в Delphi служить для роботи з простим списком? 4. Яка властивість визначає число колонок, які одночасно видно в області списку? 5. Яка властивість визначає наявність рамки у списку? 6. Який компонент в Delphi служить для роботи з комбінованим списком? 7. Яка властивість визначає наявність або відсутність сортування? 8. Яка властивість визначає номер вибраного елемента списку? 9. Які використовують методи для додавання елементів у список? 10. Яка властивість повертає число вибраних елементів в списку? Лабораторна робота №8 Тема: Робота з масивами у Delphi. Мета роботи: вивчити властивості компоненту TStringGrid. Написати програму з використанням масивів.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-04-18; просмотров: 337; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.143.23.38 (0.006 с.) |