47809 (597360), страница 4

Файл №597360 47809 (Об’єктно-орієнтоване програмування МП Delphi) 4 страница47809 (597360) страница 42016-07-30СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 4)

Властивості компонента String Grid:

  1. Name – ім'я, що використовується в програмі для звернення до об'єкта;

  2. ColCount – кількість стовпчиків (стовпців);

  3. RowCount – кількість рядків;

  4. Cells ім'я масиву ,відповідного таблиці.

  5. FixedCols – кількість фіксованих зліва стовпчиків;

  6. FixedRows – кількість фіксованих зверху рядків;

  7. Options.goEditing – можливість редагування вмісту клітинок таблиці;

  8. Options.goTab – можливість переходу до наступного елементу клавішею “Tab”;

  9. DefaultColWidth – визначає ширину стовпчиків таблиці;

  10. DefaultRowWidth – висота рядків таблиці.

  11. OptionsGoAlwaysShowEditor – при значенні False, після набору тексту необхідно натиснути F2, чи клацнути миша при значенні True – редагування виконується автоматично.

ІІІ. Використання компонента Мемо дозволяє вводити в масив елементи символьного типу у вигляді рядків тексту.

Властивості Memo:

Name -- ім'я компонента, що використовується в тексті програми;

Lines – номер рядка, номерація починається з нуля (номер задається в «[ ]»);

Text – символьна інформація, що визначає значення елементів масиву.

IV. Введення даних у масив з використанням списку List Box (Standard).

Властивості ListBox :

Items – елементи списку;

ItemIndex – номер обраного елемента списку ( на початку роботи «0»).

Список може бути сформований під час створення форми додатка, чи динамічно під час роботи програми.

У вікні Object Inspector вибрати властивості Items і клацнути на кнопці....., відкривається діалогове вікно редактора списку рядків ( StringList Editor). Кожен елемент набирати з нового рядка і завершувати «Enter». Після введення всіх елементів списку натиснути «ОК».

Процедура обробки події OnKeyPress

( перевірка коректності введення цілих чисел)

Procedure Tform1.StringGridKeyPress (Sender:Tobject; Var Key : char );

Begin

Case Key of

#8,’0’..’9’ : ; // Цифри і клавіша

#13; // Клавіша

If StringGrid1. Col < StringGrid1.ColCount – 1

Then StringGrid . co l : = StringGrid1.col + 1

Else key : = Chr(0); // iнші символи заборонені

End;

End;

Перевірка коректності введення дійсних чисел

Procedure Tform1.StringGridKeyPress (Sender:Tobject; Var Key : char );

Begin

Case Key of

#8,’0’..’9’ : ; // Цифри і клавіша

#13; // Клавіша >

If StringGrid1. Col < StringGrid1.ColCount – 1

Then StringGrid . co l : = StringGrid1.col + 1;

. ‘ , ’,’ : // Роздільник цілої і дробової частин числа

Begin

If Key <> DecimalSeparator then

Key : = DecimalSeparator ; // Замінимо роздільник на припустимий

If Pos ( StringGrid1. cells [ StringGrid . Col , 0] , DecemalSeparator ) <> 0

Then Key : = chr ( 0); // Заборона введення повторного роздільника

End;

‘ – ‘ : // мінус можна ввести тільки першим символом

// тобто коли комірка порожня

If Length ( StringGrid1.Cells [ StringGrid1 . Col , 0 ] ) <> 0

then Key : = Chr ( 0 )

else / / Інші символи заборонені

key : = Chr (0);

end; { end case}

end; { end proc}

Лабораторна робота № 12.

Тема: Обробка двовимірного масиву.

Мета: Освоїти методи обробки масиву.

Постановка задачі: Підрахувати середній бал студентів за підсумками сесії. За запитом виводити середній бал по всій групі.

Хід роботи:

  1. Відкрити новий додаток. Дати заголовок Form1.Caption ― 'Підсумки сесії':

Розмістити на формі:

  1. Зі сторінки Standard мітку Label1; властивість Caption ― 'Підсумки сесії по групі 37_';

  2. Зі сторінки Additional таблицю рядків StringGrid1; встановити властивості:

ColCount ― 5 {Кількість стовпців};

RowCount ― 5 {Кількість рядків};

FixedCols ― 0 {Кількість фіксованих стовпців};

FixedRows ― 1 {Кількість фіксованих рядків};

Name ― StringGrid1 ( або SG1 );

Options.goEditing ― True {Редагування клітинок таблиці};

Options.goTab ― True;

  1. Зі сторінки Standard прапорець CheckBox; встановити його властивість Caption ― 'Середній бал по групі';

  2. Зі сторінки Standard кнопку Button1; встановити властивість Caption ― 'Пуск';

  3. Зі сторінки Standard для виведення середнього бала по групі Label2 (чи Panel1); Caption ― ' ' (очистити).

  1. Для початкового програмного заповнення заголовка таблиці обробити подію активації форми:

Procedure TForm1.FormActivate(Sender: TObject);

begin

StringGrid1.Cells[0,0]:=' Ф И О';

StringGrid1.Cells[1,0]:=' Програм.';

StringGrid1.Cells[2,0]:=' Мат.Ан.';

StringGrid1.Cells[3,0]:=' Диф.Ур.';

StringGrid1.Cells[4,0]:=' Ср.Бал';

end;

  1. Основну обробку і введення елементів масиву (при заповненні таблиці) оформити як процедуру обробки події натискання клавіші "Пуск":

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..5,1..10] of integer; {робочий масив}

S, {середній бал студента}

SR:real; {середній бал по групі}

i, {лічильник стовпців}

j:integer; {лічильник рядків}

begin

SR:=0;

For j:=1 to SG1.RowCount-1 do {цикл по рядках}

begin

S:=0;

For і:=1 to 3 do {цикл по стовпцях}

begin

a[i,j]:=StrToInt(SG1.Cells[i,j]);

S:=S+a[i,j];

end; {For і}

S:=S/3; {підрахунок середнього балу студента}

SG1.Cells[4,j] := FloatToStr(s);

SR:=SR+S;

end; {For j}

{аналіз значення прапорця - обчислення середнього бала по групі}

If CheckBox1.State=cbChecked then

begin

SR:=SR/(SG1.RowCount-1);

Label2.Caption:=FloatToStr(SR);

end; {Then}

end; {Proc}

  1. Виконати перевірку коректності введення даних процедурою OnKeyPressed. У випадку помилки вивести повідомлення

"Дані не входять у діапазон [1..5]" і повторити введення.

  1. Перевірити, чи введені дані в клітинку, якщо ні ― повідомлення на екран і корегування таблиці.

Заповнити початковий масив випадковими числами ( RANDOM ).

Контрольні питання:

  1. Компонент StringGrid, його властивості і події.

  2. Компонент CheckBox, його властивості і події.

  3. Методи введення й обробки елементів масиву.

  4. Перевірка коректності введення даних.

Лабораторна робота №13

Тема: ”Анкета студента”

Мета: Використання зображення (фото, картинки), створення ехе-файла.

Постановка задачі:

Розробити додаток із зображеннями, що перекриваються.

Хід роботи:

I. Конструювання форми:

1. Відкрити новий додаток. Дати заголовок Form1.Caption – ‘Анкета студента’

2. Вибрати піктограму (іконку) для запуску задачі {Icon

Load (завантажити) вибираємо зі списку файлів *.ico

переглядаємо відкрити ОК іконка в системному рядку форми змінилася на обрану}

3. За бажанням змінити колір, фон, стиль, розмір форми.

4. Забрати кнопки системного меню форми ( ) {Borderconst biSystemMenu; biMinimize; biMaximize установити False }

На формі розмістити:

5. Зі сторінки Standard – мітку Label1; властивість Caption – 'Студент КТРЕ'

6. Зі сторінки Standard – поле Мемо (чи вікно Edit, чи Label) – для введення анкетних даних.

7. Розмістити 2 кнопки Button (з Standard)

Установити:

Caption.Button1 – ‘портретнe фото’

Caption.Button2 – ‘художнє фото’

8. Для коректного виходу з задачі (див.п.4) використовувати кнопку BitBtn зі сторінки палітри компонентів Additional. Установити властивість Kind(сорт) – вид кнопки на bkClose на кнопці з'явилася піктограма і напис Close.

9.На кнопці виведемо спливаючу підказку – “натяк”:

{властивість Hint – (це текст підказки, що з'являється при наведенні покажчика миші)'вихід із задачі’; властивість ShowHint – (показувати/непоказувати підказку) установити True}

10.Розмістити на формі об'єкт Image1 («картинка») зі сторінки Additional.

11.Уставити своє чи фото малюнок: {Image1 Picture вікно редактора Picture Load вибираємо файл із *.jpg; *.bmp; *.ico; *.wmf OK картинка у вікні}

12.Привести розмір зображення до заданих розмірів об'єкта Image: {властивість Stretch TRUE}

13.Аналогічно п.п.10-13 вибрати 2-і фото (картинку), наклавши її цілком на першу картинку і сполучивши розміри.

II. Розробка кодів (процедур):

procedure TForm1.Button1Click(Sender: TObject);

begin

Image1.Visible:=true; {портретне фото візуальне}

Image2.Visible:=false; {художнє фото не візуальне}

button1.Visible:=false; {кнопка1 не візуальна}

button2.Visible:=true; {кнопка2 візуальна}

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Image2.Visible:=true; {портретне фото візуальне}

Image1.Visible:=false; {художнє фото не візуальне}

button2.Visible:=false; {кнопка2 не візуальна}

button1.Visible:=true; {кнопка1 візуальна}

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

close;

end;

III. Зберегти розроблений додаток:

{гол. меню File Save all (зберегти усі) чи Shift+Ctrl+S}

чи для іншої папки:

{гол.меню File Save as…(SaveUnitas…)шлях ім'я Anketa.pas.

гол.меню Save Project as…шлях ім'я Foto.dpr}

У в а г а!!!

Файли проекту і тексту програми повинні мати різні імена.

IV. Створити ехе-файл проекту:

  1. {гол.меню Project Build all (сконструювати все)}

  2. Закрити Delphi:

Запустити задачу як ехе-файл через піктограму

КОНТРОЛЬНІ ПИТАННЯ :

  1. Властивості компонента Image.

  2. Властивості і події компонента BitBtn.

  3. Створення ехе-файла.

  4. Вибір піктограми задачі

  5. Спливаюча підказка.

Лабораторна робота № 14

Тема : Створення довідкової системи додатка

Мета : Навчитися створювати довідкову систему проекту

Складається з двох етапів:

Створення файлу документа

Компіляції файлу довідки.

I Етап

Файл документа створюється будь-яким текстовим процесором (напр. Microsoft Word) і зберігається як rtf файл.

1. Набираємо текст розділів довідки.

2. Заголовки розділів оформляємо одним зі стилів «Заголовок ».

3. Текст кожного розділу довідки повинен бути на окремій сторінці документа, тобто закінчуватися «розривом сторінки ».

4. Позначаємо заголовки розділів виносками. Універсальна виноска для ідентифікатора теми, по якому на цю виноску можуть посилатися інші теми - #. Її потрібно ставити перед кожним розділом довідки; {Вставка → посилання → виноска → інша → # у поле введення → Ok}. У нижній частині вікна редагування розкривається вікно введення тексту виноски, де вводимо ідентифікатор уставленої виноски; {# розділ1 # razd 2}.

5. Перехід до інших розділів довідки по виділеному слову (ключу): ключове слово в загальному тексті rtf файлу підкреслюємо подвійною лінією {Формат → Шрифт → Підкреслення → Подвійне → Ок застосовуємо до виділеного ключового слова}. За ключовим словом у тексті rtf файлу набираємо ідентифікатор посилання, куди необхідний перехід у довідці і «ховаємо» цей набраний ідентифікатор {Формат → Шрифт → Схований → Ок}. При цьому опція «подвійне підкреслення» повинна бити відключена.

6. Зразок фрагменту rtf – файлу:

Характеристики

Тип файла
Документ
Размер
4,97 Mb
Тип материала
Учебное заведение
Неизвестно

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6529
Авторов
на СтудИзбе
301
Средний доход
с одного платного файла
Обучение Подробнее