Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Лабораторная работа №23 Использование диалоговых окон.



Тема: Работа с диалоговыми окнами

Цель работы: Применение теоретических навыков на практике. Ознакомить студентов с использованием диалоговых окон. Закрепить полученные на лекции знания. Написать и отладить программу

Теория:

Работа со стандартными диалоговыми окнами осуществляется в три этапа:

1. На форму помещается соответствующий компонент и осуществляется настройка его свойств. Следует обратить внимание на то, что компонент-диалог не виден в момент работы программы, видно лишь создаваемое им стандартное окно.

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

3. Использование введенных из диалогового окна данных (имя файла, настройки принтера и т.д.) для продолжения работы программы.

TOpenDialog и TSaveDialog

Эти компоненты имеют идентичные свойства и различаются только внешним видом. Свойство FileName: (тип String) содержит маршрут поиска и имя выбранного файла при успешном завершении диалога программы. Для проверки наличия файла на диске глобальная функция FileExists Свойство Filter: String используется для фильтрации (отбора) файлов, показываемых в диалоговом окне. Это свойство можно устанавливать с помощью специального редактора или программно. Для доступа к редактору достаточно щелкнуть по кнопке в строке Filter окна инспектора объектов. При программном вводе фильтры задаются одной длинной строкой, в которой символы «|» служат для отделения фильтров друг от друга, а также для отделения описания фильтруемых файлов от соответствующей маски выбора. С помощью свойства DefaultExt: String[3] формируется полное имя файла, если при ручном вводе пользователь не указал расширение. В этом случае к имени файла прибавляется разделительная точка и содержимое этого свойства.

Настройка диалога может варьироваться с помощью свойства

TOpenOption = (of Readonly, ofOverwritePrompt, ofHideReadOnly,

ofNoChangeDir, ofShowHelp, ofNoValidate, ofAllowMuItiSelect,

ofExtensionDifferent, ofPathMustExist, ofFileMustExist, ofCreatePrompt, ofShareAware, ofNoReadOnlyReturn, ofNoTestFileCreate, ofNoNetworkButton, ofNoLongNames, ofOldStyleDialog, ofNoDereferenceLinks);

TOpenOptions= set of TOpenOption;

property Options: TOpenOptions;

 

Значения этого свойства имеют следующий смысл:

 

ofReadOnly Устанавливает переключатель “Только для чтения”
ofOverwritePrompt Требует согласия пользователя при записи в существующий файл
ofHideReadOnly Прячет переключатель “Только для чтения”
ofNoChangeDir Запрещает смену каталога.
ofShowHelp Включает в окно кнопку Help
ofNoValidate Запрещает автоматическую проверку правильности набираемых в имени файла символов
ofAllowMultiSelec Разрешает множественный выбор файлов
ofExtensionDiffer При завершении диалога наличие этого значения в свойстве Options говорит о том, что пользователь ввел расширение, отличающееся от умалчиваемого
ofPathMustExist Разрешает указывать файлы только из существующих каталогов
ofFileMustExist Разрешает указывать только существующие файлы.
ofCreatePrompt Требует подтверждения для создания несуществующего файла
ofShareAware Разрешает выбирать файлы, используемые другими параллельно выполняемыми программами
ofNoReadOnlyRetur Запрещает выбор файлов, имеющих атрибут “Только для чтения“
ofNoTestFileCreat Запрещает проверку доступности сетевого или локального диска
ofNoNetworkButton Запрещает вставку кнопки для создания сетевого диска
ofNoLongNames Запрещает использование длинных имен файлов
ofOldStyleDialog Создает диалог в стиле Windows З.х

Задание: Создать диалоговые окна для примеров

1 Вывести на экран 1 или 0 в зависимости от того, имеют три заданных целых числа одинаковую четность или нет.

2. Найти сумму цифр заданного четырехзначного числа.

3. Определить число, полученное выписыванием в обратном порядке цифр заданного трехзначного числа.

4. Вывести на экран 1 или 0 в зависимости от того, равна ли сумма двух первых цифр заданного четырехзначного числа сумме двух его последних цифр.

5. Вывести на экран 1 или 0 в зависимости от того, равен ли квадрат заданного трехзначного числа кубу суммы цифр этого числа.

6. Вывести на экран 1 или 0 в зависимости от того, есть ли среди первых трех цифр дробной части заданного положительного вещественного числа цифра ноль.

7. Вывести на экран 1 или 0 в зависимости от того, есть ли среди цифр заданного трехзначного числа одинаковые.

8. Присвоить целой переменной k третью от конца цифру в записи положительного целого числа n.

9. Присвоить целой переменной k первую цифру из дробной части положительного вещественного числа.

10. Целой переменной S присвоить сумму цифр трехзначного целого числа k.

11. Идет k-я секунда суток. Определить, сколько полных часов (h) и полных минут (m)прошло к этому моменту.

12. Определить f – угол (в градусах) между положением часовой стрелки в начале суток и ее положением в h часов, m минут и s секунд (0< =h< =11, 0< =m, s< =59).

13. Определить h – полное количество часов и m – полное количество минут, прошедших от начала суток до того момента( в первой половине дня), когда часовая стрелка повернулась на f градусов(0< =f< 360, f – вещественное число).

14. Пусть k – целое от 1 до 365. Присвоить целой переменной n значение 1, 2, …6 или 7 в зависимости от того, на какой день недели ( понедельник, вторник, …, суббота или воскресенье) приходится k- й день невисокосного года, в котором 1 января - понедельник.

15. Поменять местами значения целых переменных x и y, не используя дополнительные переменные.

Лабораторная работа №24 Использование операторов обработки исключений.

Цель работы: Применение теоретических навыков на практике. Ознакомить студентов с применением исключительных ситуации. Закрепить полученные на лекции знания. Написать и отладить программу

Теория: Структурная обработка исключительных ситуаций - это система, позволяющая программисту при возникновении ошибки (исключительной ситуации) связаться с кодом программы, подготовленным для обработки такой ошибки.

Новое ключевое слово, добавленное в язык Object Pascal - try. Оно используется для обозначения первой части защищенного участка кода. Существует два типа защищенных участков:

try..except, try..finally

Первый тип используется для обработки исключительных ситуаций. Его синтаксис:
try

Statement 1;

Statement 2;

...

except

on Exception1 do Statement;

on Exception2 do Statement;

...

else

Statements; {default exception-handler}

end;

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

try

Statement1;

Statement2;

...

finally

Statements; { These statements always execute }

end;
Задания: Вычислить значение Y, используя операторы «try-except-end» или «try-finally-end». Проверка на неверный ввод данных, подкоренное выражение не отрицательное и при делении на «ноль».

Вариант №1 Вариант №2

Вариант №3 Вариант №4

Вариант №5 Вариант №6

Вариант №7 Вариант №8


Вариант №9 Вариант №10

Вариант №11 Вариант №12


Вариант №13 Вариант №14


Вариант №15


Контрольные вопросы:

  1. Назначение оператора try..except?
  2. Назначение оператора try..finally?
  3. Что такое «исключительная ситуация»?

 

 

Лабораторная работа №25 Создание главного и контекстного меню.

Цель работы: Применение теоретических навыков на практике. Ознакомить студентов с компонентами вывода меню и его использование на форме приложения. Закрепить полученные на лекции знания. Написать и отладить программу

 

Теория:

· TMainMenuпозволяет Вам поместить главное меню в программу. При помещении TMainMenu на форму это выглядит, как просто иконка. Иконки данного типа называют " невидимыми компонентом", поскольку они невидимы во время выполнения программы. Создание меню включает три шага: (1) помещение TMainMenu на форму, (2) вызов Дизайнера Меню через свойство Items в Инспекторе Объектов, (3) определение пунктов меню в Дизайнере Меню.

·TPopupMenuпозволяет создавать всплывающие меню. Этот тип меню появляется по щелчку правой кнопки мыши.

Вызов приложения командой:

WinExec(‘ путь до файла’, sw_restore);

Например: WinExec(‘c: \work\ron.exe’, sw_restore);

Задания: Используя компоненту MainMenu создать меню следующего вида:

Лабораторные Задания Информация
Лабораторная №1 Лабораторная №1 О программе
Лабораторная №2 Лабораторная №2 Инструкция пользователю
Лабораторная №3 Лабораторная №3

Контрольные вопросы:

  1. Какие виды меню вы знаете?
  2. Назначение компоненты TPopupMenu.
  3. Назначение компоненты TMainMenu.

 

Лабораторная работа №26 Создание текстового файла, ввод и вывод данных. (Без и с использованием методов компонентов Delphi).

Цель работы: Ознакомить студентов с компонентами вывода текста и работы с файлами на форме приложения. Закрепить полученные на лекции знания. Написать и отладить программу

Теория:

Файлы- множество упорядоченных элементов одного типа. Процедуры над файлами:

1. Assign – связь логического и физического файла

2. Reset – открытие существующего файла

3. ReWrite –создание и открытие нового файла

4. CloseFile – закрытие файла

5. EOF – истина если достигнут конец файла

Различают 3 вида файлов: текстовые, типизированные и нетипизированные

1. Текстовые

Var < имя файловой переменной> : TextFile;

Процедуры:

Write – запись данных в файл

Read – чтение из файла

Существует множество стандартных диалоговых окон в Windows. Delphi поддерживает работу с такими окнами через следующие системные диалоги:

1. OpenDialog –открытие стандартного окна открытия файлов;

2. SaveDialog –стандартное окно сохранения файлов.;

3. FontDialog – диалог выбора шрифта;

4. ColorDialog- диалог выбора цвета;

 

Пример: Работа с текстовым файлом.

1. Открыть текстовый файл и вывести его содержимое в окно редактирования Memo1

If OpenDialog1.Execute then

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

2.Сохранить изменения

Memo1.Lines.SaveToFile(OpenDialog1.FileName);

3.Создание текстового файла

SaveDialog1.FileName: =F;

If SaveDialog1.Execute then

Memo1.Lines.SaveToFile(OpenDialog1.FileName);

4. Открыть файл

If OpenDialog1.Execute then

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

5. Изменить шрифт текста

if FondDialog1.Execute then

Memo1.Font.Assign(FontDialog1.Font);

  1. Изменить цвет фона компоненты Memo

if ColorDialog1.Execute then

Memo1.Color: =ColorDialog1.Color;

Задание №1:

Создать приложение с использованием диалоговых компонент, компоненты Memo и «Главного меню» следующего вида:

 

Файл Задание Форматирование Выход
Открыть (создать)   Цвет фона  
Сохранить   Стиль текста  

Вариант №1

Ввести файл символов, предшествующую символу " пробел" и выяснить: есть ли среди них буква А, сколько раз встретился символ "." , заменить букву В на *

Вариант №2

Ввести файл символов и выяснить, - сколько среди них точек, сколько среди них пробелов, сколько среди них букв Д.

Вариант №3

Ввести файл символов, предшествующую символу! и выяснить, есть ли среди них буквы, входящие в слово КУРС и сколько раз какая из этих букв встретилась.

Вариант №4

Ввести файл символов, предшествующих точке и выяснить, встретились ли среди них буквы, входящие в слово ТУР

Вариант №5

Ввести файл символов, заканчивающихся * выяснить: сколько пробелов, сколько букв А, сколько букв С, все буквы А заменить на точку

Вариант №6

Ввести файл символов, предшествующих точке и выяснить, есть ли среди них буквы, входящие в слово ЭВМ и сколько раз они встречались.

Вариант №7

Ввести файл символов, предшествующих символу * и выяснить сколько среди них букв S, A, R. Все буквы S заменить на точку

Вариант №8

Ввести файл символов, предшествующую символу “.“ и определить: сколько символов введено, есть ли среди них символ пробел, все встретившиеся буквы “A“ заменить символом “*“.

Вариант №9

Вывести файл символов и определить, есть ли среди них буквы, входящие в слово «Мера». Если они найдены, заменить их символом пробел.

Вариант №10

Ввести файл символов, состоящую из N слов, разделённых пробелом и определить, сколько слов введено, кроме того, вывести все слова отдельно «столбцом».

Вариант №11

Ввести файл символов и определить, есть ли среди них буквы входящие в слово “ШИНА” и сколько среди символов пробелов

Вариант №12

Ввести файл символов, предшествующую символу " пробел" и выяснить: есть ли среди них буква Н, сколько раз встретился символ «=», заменить букву «Н» на «? »

Вариант №13

Ввести файл символов и выяснить, - сколько среди них точек, сколько среди них пробелов, сколько среди них букв Ш.

Вариант №14

Ввести файл символов, предшествующих точке и выяснить, встретились ли среди них буквы, входящие в слово МИР

Вариант №15

Ввести файл символов, предшествующих символу « - » и выяснить сколько среди них букв Н, Ю, Х. Все буквы Ю заменить на точку

Задание № 2: Выполнить задачи используя системные диалоги

Вариант№1

Дана строка символов, среди которых есть одна открываю­щаяся и одна закрывающаяся скобка. Вывести на экран все символы, расположенные внутри этих скобок.

Вариант№2

Дана строка. Указать те слова, которые содержат хотя бы одну букву k.

Вариант№3

Дана строка, содержащая английский текст. Найти количест­во слов, начинающихся с буквы Ь.

Вариант№4

Дана строка. Подсчитать в ней количество вхождений букв г, k, t.

Вариант№5

Дана строка, содержащая текст. Найти длину самого коротко­го слова и самого длинного слова.

Вариант№6

Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы.

Вариант№7

Дан файл. Удалить из него все лишние пробелы, оставив между словами не более одного. Результат поместить в новый файл.

Вариант№8

Дан файл и некоторое слово. Напечатать те предложения файла, которые содержат данное слово.

Вариант№9

Дан файл. Напечатать в алфавитном порядке все слова из данного файла, имеющие заданную длину N..

Вариант№10

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

Вариант№11

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

Вариант№12

Дан файл, содержащий текст, включающий русские и анг­лийские слова. Подсчитать, каких букв в тексте больше — русских или латинских.

Вариант№13

Дан файл, содержащий текст. Сколько слов и цифр в тексте?

Вариант№14

Дан файл, содержащий текст, включающий русские и анг­лийские слова. Получить новый файл, заменив в исходном, все заглавные буквы строчными и наоборот.

Вариант№15

Дан файл, содержащий зашифрованный русский текст. Каждая буква заменяется на следующую за ней (буква Язаме­няется на А). Получить в новом файле расшифровку данного текста.

Контрольные вопросы:

1. Какие бывают файлы?

2. Процедуры для текстовых файлов.

3. Какие системные диалоги вы знаете?

4. Опишите компоненту OpenDialog?

5. Опишите компоненту SaveDialog?

6. Опишите компоненту FontDialog и ColorDialog?

 

 

Лабораторная работа №27 Создание типизированного файла, ввод и вывод данных.

Цель работы: Ознакомить студентов с компонентами вывода данных и работы с файлами на форме приложения. Закрепить полученные на лекции знания. Написать и отладить программу

Теория:

Файлы- множество упорядоченных элементов одного типа. Процедуры над файлами:

7. Assign – связь логического и физического файла

8. Reset – открытие существующего файла

9. ReWrite –создание и открытие нового файла

10. CloseFile – закрытие файла

11. EOF – истина если достигнут конец файла

Различают 3 вида файлов: текстовые, типизированные и нетипизированные

Типизированные

Var < имя файловой переменной> : File of < тип или запись>;

Процедуры:

Seek – поиск нужной записи в файле

FilePos - - возвращает текущую позицию в файле

Нетипизированные

Var < имя файловой переменной> : File;

Существует множество стандартных диалоговых окон в Windows. Delphi поддерживает работу с такими окнами через следующие системные диалоги:

5. OpenDialog –открытие стандартного окна открытия файлов;

6. SaveDialog –стандартное окно сохранения файлов.;

7. FontDialog – диалог выбора шрифта;

8. ColorDialog- диалог выбора цвета;

 

Пример: Работа с типизированным файлом.

1. Открыть типизированным файл и вывести его содержимое в окно редактирования Memo1

If OpenDialog1.Execute then

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

2.Сохранить изменения

Memo1.Lines.SaveToFile(OpenDialog1.FileName);

3.Создание типизированным файла

SaveDialog1.FileName: =F;

If SaveDialog1.Execute then

Memo1.Lines.SaveToFile(OpenDialog1.FileName);

4. Открыть файл

If OpenDialog1.Execute then

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

5. Изменить шрифт текста

if FondDialog1.Execute then

Memo1.Font.Assign(FontDialog1.Font);

6Изменить цвет фона компоненты Memo

if ColorDialog1.Execute then

Memo1.Color: =ColorDialog1.Color;

Задание №1:

Создать приложение с использованием диалоговых компонент, компоненты Memo и «Главного меню» следующего вида:

 

Файл Задание Форматирование Выход
Открыть (создать)   Цвет фона  
Сохранить   Стиль текста  

 

 

Задание

1. Дан файл f, элементы которого являются действительными числами. Найти:

а) сумму элементов файла f;

б) произведение элементов файла f;

в) сумму квадратов элементов файла f;

г) модуль суммы и квадрат произведения элементов файла f;

д) последний элемент файла.

2. Дан файл f, элементы которого являются действительными числами. Найти:

а) наибольшее из значений элементов;

б) наименьшее из значений элементов с четными номерами;

в) наибольшее из значений модулей элементов с нечетными номерами;

г) сумму наибольшего и наименьшего из значений элементов;

д) разность первого и последнего элементов файла.

3. Дан файл f, элементы которого являются целыми числами. Найти:

а) количество четных чисел среди элементов;

б) количество удвоенных нечетных чисел среди элементов;

в) количество квадратов нечетных чисел среди элементов.

4. Дан файл f. Получить копию файла f в файле g.

5. Дан файл f, элементы которого являются целыми числами. Получить в файле g все элементы файла f:

а) являющиеся четными числами:

б) делящиеся на 3 и не делящиеся на 7;

в) являющиеся точными квадратами.

1. Дан файл f, элементы которого являются целыми числами. Записать в файл g все четные числа файла f, а в файл h - все нечетные. Порядок следования чисел сохраняется.

2. Дан файл f, элементы которого являются целыми числами. Получить файл g, образованный из файла f исключением повторных вхождений одного и того же числа.

3. Дан файл f, элементы которого являются целыми числами. Никакой из элементов файла не равен нулю. Файл f содержит столько же отрицательных чисел, сколько и положительных. Используя вспомогательный файл h, переписать элементы файла f в файл g так, чтобы в файле g:

а) не было двух соседних чисел с одним знаком;

б) сначала шли положительные, потом отрицательные числа;

9. Дан файл f, элементы которого являются целыми числами. Число элементов файла делится на 10. Записать в файл g наибольшее значение первых десяти элементов файла f, затем - слелуших десяти элементов и т.д.

10. Дан файл f, элементы которого являются целыми числами.Описать функцию отриц(£ ), подсчитывающую сумму отрицательных элементов в файле f.

11. Даны следующие описания переменных:

type время = record час: 0..23; мин, сек: 0..59 end;

ФВ = file of время;

Описать логическую функцию eq(f, g), проверяющую наравенство файлы/ и g типа ФВ.

12. Даны следующие описания переменных:

type FB = file of real;

Описать функцию предпосл(/). значением которой является предпоследний элемент файла / имеющего тип FR и содержащего не менее двух элементов.

13. Даны следующие описания переменных:

vype ietters=file of...;

Описать процедуру append(f, g, h) от трех файлов типа letters, которая записывает в файл f сначала все элементы файла g, a затем - все элементы файла h.

Контрольные вопросы:

1. Какие бывают файлы?

2. Процедуры для типизированных файлов.

3. Нетипизированные файлы.

4. Какие системные диалоги вы знаете?

5. Опишите компоненту OpenDialog?

6. Опишите компоненту SaveDialog?

7. Опишите компоненту FontDialog и ColorDialog?

 

 

Лабораторная работа №28Создание инструментальных панелей.

 

 

Лабораторная работа №29 Создание графика с помощью компонента Chart.Рисование на холсте Canvas.

 

Цель работы: Применение теоретических навыков на практике. Ознакомить студентов с компонентами вывода фигур на форме приложения. Закрепить полученные на лекции знания. Написать и отладить программу

Теория:

В стандартную библиотеку визуальных компонент Delphi входит несколько объектов, с помощью которых можно придать своей программе совершенно оригинальный вид. Это - TImage (TDBImage), TShape,

TImage позволяет поместить графическое изображение в любое место на форме. Этот объект очень прост в использовании - выберите его на странице Additional и поместите в нужное место формы. Собственно картинку можно загрузить во время дизайна в редакторе свойства Picture (Инспектор Объектов). Картинка должна храниться в файле в формате BMP (bitmap), WMF (Windows Meta File) или ICO (icon).

TShape - простейшие графические объекты на форме типа круг, квадрат и т.п. Вид объекта указывается в свойстве Shape. Свойство Pen определяет цвет и вид границы объекта. Brush задает цвет и вид заполнения объекта. Эти свойства можно менять как во время дизайна, так и во время выполнения программы.

У ряда объектов из библиотеки визуальных компонент есть свойство Canvas (канва), которое предоставляет простой путь для рисования на них. Canvas является в свою очередь объектом, объединяющим в себе поле для рисования, карандаш (Pen), кисть (Brush) и шрифт (Font). Используя Canvas, Вы можете воспроизводить на форме любые графические объекты - картинки, многоугольники, текст и т.п

Свойства Canvas:

Brush -кисть, является объектом со своим набором свойств:

Bitmap - картинка размером строго 8x8, используется для заполнения (заливки) области на экране.

Color - цвет заливки. Style - предопределенный стиль заливки; это свойство конкурирует со свойством Bitmap - какое свойство Вы определили последним, то и будет определять вид заливки.

ClipRect - (только чтение) прямоугольник, на котором происходит графический вывод.

Font - шрифт, которым выводится текст (метод TextOut). Pen - карандаш, определяет вид линий; как и кисть (Brush) является объектом с набором свойств:

Color - цвет линии Mode - режим вывода: простая линия, с инвертированием, с

выполнением исключающего или и др.

Style - стиль вывода: линия, пунктир и др. Width - ширина линии в точках

PenPos - текущая позиция карандаша, карандаш рекомендуется перемещать с помощью метода MoveTo, а не прямой установкой данного свойства. Pixels - двухмерный массив элементов изображения (pixel), с его помощью Вы получаете доступ к каждой отдельной точке изображения

Методы Canvas:

Методы для рисования простейшей графики - Arc, Chord, LineTo, Pie, Polygon, PolyLine, Rectangle, RoundRect. При прорисовке линий в этих методах используются карандаш (Pen) канвы, а для заполнения внутренних областей - кисть (Brush).

Методы для вывода текста - TextOut и TextRect. При выводе текста используется шрифт (Font) канвы. При использовании TextRect текст выводится только внутри указанного прямоугольника.

Пример: Нарисовать круг и прямоугольник с рамкой.

  1. Расположите компоненты: Image(Addition), Button.
  2. Обработчик события:

begin

with Image1 do

begin

{рисуется рамка}

 

Canvas.MoveTo(2, 2);

Canvas.LineTo(2, 150);

Canvas.LineTo(315, 150);

Canvas.LineTo(315, 2);

Canvas.LineTo(2, 2);

 

Canvas.Rectangle(10, 10, 250, 120);

Canvas.Ellipse(30, 30, 100, 100);

Canvas.TextOut(120, 20, 'Рисунок ');

end; end;

 

Рисование по пикселям.

Свойства Canvas компоненты Image – представляет собой область компонента на которой можно рисовать или отображать готовые изображения. Каждая точка канвы имеет координаты X и Y. Максимальное значение по X и по Y находится так:

X: =Image1.Width;

Y: =Image1.Height;

Рисовать по канве можно используя свойство Pixels. Это свойство представляет собой двухмерный массив, который отвечает за цвета канвы. К каждому пикселю можно обращаться по координатам и задавать его определенный цвет:

Image1.Canvas.Pixels[10, 20]: =0; {Черная точка с координатой 10, 20}

Image1.Canvas.Pixels[10, 20]: =clBlack; {Черная точка с координатой 10, 20}

Пример: Нарисовать график функции y=sin x

  1. Разместить компоненту Image.
  2. Кнопка «нарисовать».
  3. В обработчик событий кнопки записать:

var x, y: Real; PX, PY: LongInt;

Begin

For PX: =0 To Image1. Width Do

Begin

X: =PX*4*Pi/ Image1.Width;

Y: =sin(x);

PY: =Trunc(Image1.Height-(Y+1)* Image1.Height/2);

Image1.Canvas.Pixels[PX, PY]: =0;

End;

End;

 

 

Задание1:

Вариант №1

Нарисовать следующий предмет: круг и квадрат

Вариант №2

Нарисовать следующий предмет: круг в квадрате

Вариант №3

Нарисовать следующий предмет: квадрат в эллипсе

Вариант №4

Нарисовать следующий предмет: круг в эллипсе

Вариант №5

Нарисовать следующий предмет: прямоугольник в квадрате

Вариант №6

Нарисовать следующий предмет: 2 круга в эллипсе

Вариант №7

Нарисовать следующий предмет: круг в круге и квадрате

Вариант №8

Нарисовать следующий предмет: 3 круга друг в друге

Вариант №9

Нарисовать следующий предмет: снеговика

Вариант №10

Нарисовать следующий предмет: 10 кругов разного размера

Вариант №11

Нарисовать следующий предмет: 2 круга с квадратами внутри

Вариант №12

Нарисовать следующий предмет: 10 кубиков с прямоугольником внутри

Вариант №13

Нарисовать следующий предмет: работа

Вариант №14

Нарисовать следующий предмет: дыня в движении

Вариант №15

Нарисовать следующий предмет: бублик в движении

 

Задание2: Нарисовать график с координатными осями и нумерацией

Вариант №1

Нарисовать график следующей функции: y = x+4

Вариант №2

Нарисовать график следующей функции: y = 2x+5

Вариант №3

Нарисовать график следующей функции: y = 7-5x

Вариант №4

Нарисовать график следующей функции: y = x2

Вариант №5

Нарисовать график следующей функции: y = x2+4

Вариант №6

Нарисовать график следующей функции: y = sin (x+3)

Вариант №7

Нарисовать график следующей функции: y = cos (x+3)

Вариант №8

Нарисовать график следующей функции: y = 3x+6x2

Вариант №9

Нарисовать график следующей функции: y = 1-x3

Вариант №10

Нарисовать график следующей функции: y = 5+x3

Вариант №11

Нарисовать график следующей функции: y = cos (2x)

Вариант №12

Нарисовать график следующей функции: y = x3+3

Вариант №13

Нарисовать график следующей функции: y =x2+3+x

Вариант №14

Нарисовать график следующей функции: y =x2+10-4x

Вариант №15

Нарисовать график следующей функции: y =sin (x+3)+5x

Контрольные вопросы:

  1. Какие компоненты предназначены для вывода графической информации?
  2. Назначение компоненты TImage?
  3. Назначение компоненты TShape?

4. Как найти максимальное значение по X и Y?

5. Назначение свойства Pixels.

6. Назначение свойства Canvas.

 

Лабораторная работа №30 Создание таблиц базы данных и установка параметров таблиц. Создание приложения для работы с таблицей базы данных.

 

Цель работы: Изучить создание таблицы базы данных с помощью утилиты Database Desktop. Применение теоретических навыков на практике

Теория:

Database Desktop - это утилита, во многом похожая на Paradox, которая поставляется вместе с Delphi для интерактивной работы с таблицами различных форматов локальных баз данных. Для запуска Database Desktop – в главном меню пункт Tools|DataBase DeskTop.

Для создания таблицы необходимо сначала определить свой алиас (название каталога ваших БД ). Tools|Alias Manager в диалоговом окне и нажмите на кнопку New (создание нового алиаса). В поле DataBase Alias наберите необходимое название нашего алиаса (например: Gruppa). Для определения пути нажмите на Browse(выберите путь). Для сохранения KeepNew и Ok.

Выберите команду меню File|New|Table для создания новой таблицы. Перед Вами появится диалоговое окно выбора типа таблицы (Paradox 7).

После выбора типа таблицы Database Desktop представит Вам диалоговое окно, специфичное для каждого формата, в котором Вы сможете определить поля таблицы и их тип.

Имя поля в таблице формата Paradox представляет собой строку, написание которой подчиняется следующим правилам:

1. Имя должно быть не длиннее 25 символов.

2. Имя не должно начинаться с пробела, однако может содержать пробелы.

3. Имя не должно содержать квадратные, круглые или фигурные скобки [], () или {}, тире, а также комбинацию символов “тире” и “больше” (-> ).

4. Имя не должно быть только символом.

5. Имя должно быть не длиннее 10 символов.

6. Пробелы в имени недопустимы.

Следующий (после выбора имени поля) шаг состоит в задании типа поля. Для получения списка типов полей перейдите к столбцу “Type”, а затем нажмите пробел или щелкните правой кнопкой мышки. Поля таблиц формата Paradox могут иметь следующий тип (для ввода типа поля можно набрать только подчеркнутые буквы или цифры):

Alpha строка длиной 1-255 байт, содержащая любые печатаемые символы
Number числовое поле длиной 8 байт, значение которого может быть положительным и отрицательным. Диапазон чисел - от 10-308 до 10308 с 15 значащими цифрами
$ (Money) числовое поле, значение которого может быть положительным и отрицательным. По умолчанию, является форматированным для отображения десятичной точки и денежного знака
Short числовое поле длиной 2 байта, которое может содержать только целые числа в диапазоне от -32768 до 32767
Long Integer числовое поле длиной 4 байта, которое может содержать целые числа в диапазоне от -2147483648 до 2147483648
Date поле даты длиной 4 байта, которое может содержать дату от 1 января 9999 г. до нашей эры - до 31 декабря 9999 г. нашей эры. Корректно обрабатывает високосные года и имеет встроенный механизм проверки правильности даты
Memo поле для хранения символов, суммарная длина которых более 255 байт. Может иметь любую длину. При этом размер, указываемый при создании таблицы, означает количество символов, сохраняемых в таблице (1-240) - остальные символы сохраняются в отдельном файле с расширением.MB
Logical поле длиной 1 байт, которое может содержать только два значения - T (true, истина) или F (false, ложь). Допускаются строчные и прописные буквы
Bytes строка цифр длиной 1-255 байт, содержащая любые данные

После ввода всех полей БД, необходимо сохранить таблицу Save As.., ввести имя БД(File Name), в Alias выбрать алиас который вы создали и Save. Для заполнения данных – File| Open| Table.. Затем для редактирования полей нажать F9 или Table|Edit data. Введите 5 записей и закройте окно. БД готова. Затем закрываем Database Desktop.

 

Задания: Создать Б/Д следующей структуры:

Вариант 1«магазин продуктовый»

  1. ФИО рабочего
  2. наименование продукта
  3. цена продукта
  4. время продажи
  5. количество (масса)

Вариант 2 «учёт библиотеки»

  1. № карточки студента
  2. наименование книги
  3. дата выдачи
  4. ФИО студента
  5. дата сдачи

Вариант 3 «аэропорт»

  1. дата
  2. количество проданных билетов
  3. страна
  4. ФИО пассажира
  5. цена билета

Вариант 4 «железнодорожный вокзал»

  1. ФИО рабочего
  2. № рабочего
  3. время выезда поезда
  4. направление
  5. дата приезда

Вариант 5 «автобусный парк»

  1. № автобуса
  2. район маршрута
  3. количество рабочих часов
  4. ФИО контроллёра
  5. цена билета

Вариант 6 «карточка медицинских услуг»

  1. ФИО обследуемого
  2. анализы
  3. заболевание
  4. дата обследования
  5. направление врача

Вариант 7 «место начальника цеха»

  1. ФИО начальника
  2. количество подчинённых
  3. дата сдачи работ
  4. сумма премиальных рабочего
  5. зарплата рабочего

Вариант 8 «бланк бухгалтера»

  1. наименование предприятия
  2. сумма выплаченных налогов
  3. количество рабочих
  4. зарплата рабочего
  5. налог с заработной платы

Вариант 9 «ветеринарная клиника»

  1. дата поступления
  2. ФИО хозяина
  3. сведения о питомце
  4. диагноз
  5. сумма оплаты

Вариант 10 «плават


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-08-31; Просмотров: 778; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.242 с.)
Главная | Случайная страница | Обратная связь