Лабораторна робота №14 Створення інтерфейсу власної форми
Мета: Навчитись будувати інтерфейси власної програми.
Завдання 1.
Використовуючи компоненти Edit, ListBox, ComboBox та інших компонентів створити програму, яка буде конструктором для Вашої форми для опитування.
Завдання 2.
Створити програму, яка буде проводити опитування та записувати результати до файлу протоколу.
Примітка:
При побудові форми опитування максимально використовувати варіанти відповідей у компонентах ListBox, ComboBox у текстових файлах
Прикрасити форму тематичними малюнками.
Продемонструвати роботу програм..
четвер, 19 квітня 2018 р.
понеділок, 16 квітня 2018 р.
Метод Application.ProcessMessages
Метод Application.ProcessMessages
Метод Application.ProcessMessages необходимо
применять в динамичных приложениях, требующих немедленного отображения
выполненных в программе действий. Для повышения быстродействия программы
сообщения (Messages!), которые объект
Application посылает объектам программы, этими объектами
выполняются не сразу после получения, а по мере накопления некоторой очереди.
Для иллюстрации работы метода Application.ProcessMessages рассмотрим процедуру, троекратным "мельканием" текста в строке ввода обращающего внимание пользователя на то, что данные не введены:
Попробуйте выполнить приложение с закомментированными операторами Application.ProcessMessages, и вы никогда не увидите желаемогопоявления-исчезания текста.
Программа идёт дальше, невзирая на то, что необходимые действия визуально не
отражены на Форме. Теперь раскомментируйте - и желаемый эффект достигнут. Таким
образом, метод Application.ProcessMessages заставляет
программу немедленно отразить результат действия уже выполненных ею операторов.
Аналогично, программа, выполняющая длительные вычисления, может выглядеть зависшей, так как даже сообщения на перемещение её окна или нажатия на кнопки не будут обработаны, пока вычисления не будут закончены. Поэтому нужно либо выполнять вычисления в отдельном потоке, либо периодически выполнять Application.ProcessMessages. Однако, в этом случае нужно учитывать, что выполнение этого метода несколько тормозит выполнение программы, и его вызов не должен быть слишком частым.
Другой пример, связанный с работой с графикой в Delphi. Динамика построения графиков функций, когда график рисуется постепенно, по мере вычисления очередной точки, выглядит в программе очень эффектно. Чтобы добиться такого эффекта, также необходимо применять метод Application.ProcessMessages. Вычисляя положение очередной точки, нужно после её выведения на холст:
добавлять:
Без применения последнего оператора мы получим сразу готовый график функции, и даже применение оператора задержки перед выводом очередной точки не поможет.
Для иллюстрации работы метода Application.ProcessMessages рассмотрим процедуру, троекратным "мельканием" текста в строке ввода обращающего внимание пользователя на то, что данные не введены:
procedure
TForm1.Button1Click(Sender: TObject);
var i: Integer;
begin
if Edit1.Text='' then
begin
for i:=1 to 3 do
begin
Edit1.Text:='Введите
данные';
//Application.ProcessMessages;
sleep(300);
Edit1.Text:='';
//Application.ProcessMessages;
sleep(300);
end;
Edit1.SetFocus;
end;
end
;
Попробуйте выполнить приложение с закомментированными операторами Application.ProcessMessages, и вы никогда не увидите желаемого
Аналогично, программа, выполняющая длительные вычисления, может выглядеть зависшей, так как даже сообщения на перемещение её окна или нажатия на кнопки не будут обработаны, пока вычисления не будут закончены. Поэтому нужно либо выполнять вычисления в отдельном потоке, либо периодически выполнять Application.ProcessMessages. Однако, в этом случае нужно учитывать, что выполнение этого метода несколько тормозит выполнение программы, и его вызов не должен быть слишком частым.
Другой пример, связанный с работой с графикой в Delphi. Динамика построения графиков функций, когда график рисуется постепенно, по мере вычисления очередной точки, выглядит в программе очень эффектно. Чтобы добиться такого эффекта, также необходимо применять метод Application.ProcessMessages. Вычисляя положение очередной точки, нужно после её выведения на холст:
Canvas.LineTo(X[n], Y[n]);
sleep(200);
добавлять:
Application.ProcessMessages;
Без применения последнего оператора мы получим сразу готовый график функции, и даже применение оператора задержки перед выводом очередной точки не поможет.
четвер, 12 квітня 2018 р.
матеріал та типові задачі до екзамену
компонент таблица
листбокс та комбобокс
тема розробка проекту
компоненти та модулі
Об;єктне програмування. Візуальні мови
програмування. Середовище програмування Delphi.
Компоненти для введення/виведенняінформації. Панель об’єктів. Основні властивості об’єктів.
типові задачі до екзамену
питання до екзамену
листбокс та комбобокс
тема розробка проекту
компоненти та модулі
Об;єктне програмування. Візуальні мови
програмування. Середовище програмування Delphi.
Компоненти для введення/виведенняінформації. Панель об’єктів. Основні властивості об’єктів.
типові задачі до екзамену
питання до екзамену
четвер, 5 квітня 2018 р.
Лабораторна робота № 12 Середовище delphi Файли
Лабораторна робота № 12 Середовище delphi Файли
Мета: Навчитись складати та реалізовувати програми у середовищі delphi.
Завдання до лабораторної роботи:
- Створити програму, яка буде вводити числа з текстового файлу та знаходити:
- середнє значення
- суми додатніх та від'ємних чисел окремо та разом
Файл чисел створити за допомогою блокнота, де в кожному рядку знаходиться одне ціле число. Кількість чисел у файлі невідома.
2. Написати програму, яка буде виводити два випадкових числа та місце для введення відповіді , наприклад суми. Приклад та введене значення відповіді записати у текстовий файл - протокол роботи програми.
Оформити дизайн програми.
3.Продемонструвати роботу програм.
Підписатися на:
Дописи (Atom)