ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Записна книжка на Delphi 7
         

     

    Інформатика, програмування

    Міністерство науки і освіти України

    ФТЛ при ХДТУ та ДНУ

    Науково-дослідна робота

    з інформатики:

    «Записна книжка на Delphi 7 »

    Зробив: учень 10-Е класу

    Закревський Ігор

    Перевірив: вчитель інформатики

    Нога Л.В .

    м. Херсон - 2005

    Зміст

    I. Вступ ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 3

    II. Оболонка головної програми «Записна книжка»
    1. Постановка завдання ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .... 5
    2. Опис створення головної програми ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .... 5
    3. Опис процедур і функцій компонентів, використаних в програмі
    ... ... ... ... 9

    III. Опис допоміжних програм, які були використані в програмі
    «Записна книжка»
    1. Програма «Довідник друзів» а) Постановка завдання ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 14 б) Створення інтерфейсу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 14 в) Опис процедур і функцій, використаних компонентів ... ... ... ... ... ... ... ... ... .. 14
    2. Програма «Media Player» а) Постановка завдання ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 16 б) Створення інтерфейсу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 16 в) Опис процедур і функцій, використаних компонентів ... ... ... ... ... ... ... ... .... 16
    3. Програма «CD-Rom» а) Постановка завдання ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 17 б) Створення інтерфейсу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 17 в) Опис процедур і функцій, використаних компонентів ... ... ... ... ... ... ... ... .... 17
    4. Програма «Нагадати про ..." а) Постановка завдання ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 17 б) Створення інтерфейсу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 17 в) Опис процедур і властивостей, використаних компонентів ... ... ... ... ... ... ... ... ... .. 19

    IV. Висновок ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 22

    V. Список використаної літератури ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .... 23

    - 2 -

    Вступ


    Моя програма «Записна книжка» зроблена на мові програмування Delphi 7.
    У ній можна створювати будь то потрібні вам поради. Так як таких програмбезліч, то я в неї додав кілька додатково написанихпрограм, для зручного користування. За допомогою цих програм, наприклад,можна під час користування «записники» прослухати музичнікомпозиції або записати в довідник інформацію про когось, тобто:прізвище, ім'я, адреса, телефон. А так само при використанні програми
    «Нагадати про ...» можна виставити час, через який буде висвітленийповідомлення, яке ви самі впишете, а також є можливість виставлянняпрогравання музичного файлу і висвічування вашого повідомлення. Єпрограма, яка відкриває і закриває лоток CD-ROM'а, тепер не потрібнощоразу нахилятися до CD-Rom'у. Програма схожа на «Текстовий документ»
    О.С. Windows, як і в ній в моїй програмі можна виставляти шрифт і колірнаписаного тексту. Всі параметри які ви змінюєте зберігаються в INI --файл, який створюється в Windows. Реалізував підтримку декількохкористувачів - зберігаючи інформацію кожного користувача у файл, що бвідкрити потрібний файл - просто треба зайти Файл | Відкрити. Є функціяшвидкого вставляння у ваш текст сьогоднішню дату і час. Так само є
    «Пошук» - можна знайти потрібний вам текст або дату.
    Оскільки програма написана на мові програмування Delphi, то кількаслів про цю мову програмування.
    Delphi - один з найбільш потужних систем, що дозволяють на найсучаснішомурівні створювати як окремі прикладні програми Windows, так ірозгалужені комплекси, призначені для роботи в корпоративних мережах ів Інтернет.
    Delphi-це система візуального об'єктно-орієнтованогопрограмування, що дозволяє вирішувати безліч завдань, зокрема:

    1.Создавать закінчені програми для Windows самої різноїспрямованості, від суто обчислювальних і логічних, до графічних імультимедіа.

    2.Бистро створювати (навіть починаючим програмістам) професійновиглядаючий віконний інтерфейс для будь-яких додатків, написаних на будь-якомумовою; інтерфейс задовольняє всім вимогам Windows і автоматичноналаштовується на ту систему, яка встановлена на комп'ютерікористувача, оскільки використовує багато функцій, процедури, бібліотеки
    Windows.

    3.Создавать потужні системи роботи з локальними і віддаленими базамиданих будь-яких типів; при цьому є засоби автономної налагодження програмиз подальшим виходом у мережу.

    4.Создавать багатоланкові розподілені додатки, засновані нарізних технологіях.

    5.Создавать додатки, які керують іншими додатки, вчесності, такими програмами Microsoft Office, як Word, Excel та ін

    6.Создавать крос-платформні додатки, які можнакомпілювати й експлуатувати як і в Windows, так і в системі Linux.

    7.Создавать програми різних класів для роботи в Інтернет і вінтранет.

    8.Создавать професійні програми установки для додатків
    Windows,враховують усю специфіку і всі вимоги Windows.

    - 3 -

    9. І багато чого іншого, включаючи створення звітів, довідкових систем,бібліотек DLL, компонентів ActiveX.
    Delphi-надзвичайно швидко розвивається, тому що її творціпостійно відстежують все нове в інформаційних технологіях.
    Таким чином, Delphi 7 прекрасний засіб створення додатків для
    Windows, Delphi перетворюється на інструмент створення додатків длябагатоланкових розподілених крос-платформних корпоративнихінформаційних систем.

    - 4 -

    Головна програма «Записна книжка»

    Постановка завдання

    Головна форми буде схожа на програму «Текстовий документ »Windows, алез трохи іншим інтерфейсом і новими функціями. Буде реалізована панельінструментів на яку викладемо кнопки які, на мій погляд, будуть частовикористовуватися користувачем. Також будуть годинник. При запуску програми будезавантажуватися останній файл, який був відкритий перед закриттям програми, атакож коли перед закриттям програми буде ставити питання про збереженняфайлу. Під час створення нового файлу з нотатками, відразу цей файл будезбережуться на жорсткому диску ПК. Буде стандартний набір для роботи зтекстом: копіювати, вирізати, вставити, знайти, скасувати останні дію
    . Буде 4 програми: «Довідник друзів», «Media Player», «CD-Rom»,
    «Нагадати про ...» (див. вище).

    Створення головної форми

    Створюємо новий проект: File | New | вибираємо Application.

    У властивості Caption форми введемо текст: 'Записна книжка', а у властивостіформи Name введемо ім'я форми: 'MainForm'. У властивості форми AutoSize потрібновиставити True, на те щоб форма змінювала розмір разом з компонентами.
    Переносимо на порожню форму багаторядкові вікно редагування типу TMemo зсторінки Standard палітри компонентів, для цього виділіть піктограму вікнаредагування (вона шоста ліворуч) і потім клацніть курсором миші на форму.
    На формі з'явиться вікно редагування, якої Delphi присвоїть ім'я позамовчуванням - Memo1. Так як в Memo буде знаходиться багато тексту, а він можевиходить за межі Memo, то потрібно виставити властивість ScrollBars в
    Інспектор об'єктів (ріс.1.2) = ssVertical, а так само потрібно виставитивластивість Align = alClient, для того щоб при розгортанні головної формина весь екран, Memo збільшувала свої розміри разом з головною формою.
    Аналогічним чином перенесіть на форму з тієї ж сторінки Standard,палітри компонентів, головне меню MainMenu (він другий ліворуч). У головному менюбуде реалізовано процес відкриття, збереження, редагування тексту в Memo + тутж буде викликатися всі додаткові програми. Delphi присвоїть йому ім'я
    MainMenu1.
    Перейдіть на формі компонент MainMenu - головне меню. Клікніть двічі понього. Потрібно додати розділи як показано на рис.1, нові розділи можнавводити, розміщуючи курсор в рамку з точок, що позначає місце розташуваннянового розділу, рис.1.1

    Рис.1.1

    Вікно конструктора меню

    - 5 -
    Що б написати написи кнопок «Новий», «Зберегти »і т.д., гукнемо напотрібну кнопку і в інспектор об'єктів знайти властивість Caption, як показанона рис. 1.2

    Ріс.1.2

    Інспектор Об'єктів

    Object Inspector

    Що б зробити так щоб замість напису була просто лінія, то треба ввластивості Caption написати «-».< br> У заголовку вікна форми напишемо «Записна книжка». Для цього клацнемо наформу, у вікні Інспектори Об'єктів знайдемо властивість Caption форми і напишемо вньому «Записна книжка" (без лапок).
    Зараз можна запустити проект, натискання кнопки F9, побачимо нашу програму,яка схожа на текстовий редактор Windows.
    клікніть двічі по MainMenu1, відкриється вікно конструктора меню
    (рис.1.1), у ньому додамо назви меню: «Файл», «Правка», «Екстра». Длякожного меню пишемо назви підменю. Для «Файл»: повинні були написати
    (дивитися вище):

    «Правка»: "Пошук", "-"," Назад ", "-"," Копіювати", "Вирізати",

    "Вставити" , "Очистити", "-", "Шрифт", "-", "Дата і час".

    «Екстра»: "Знайомі", "Media Player", "CD-Rom", " Нагадати про ... ".
    Як має все це виглядатиме на рис.1.3

    Рис. 1.3
    Так мають виглядати пункти меню післяправильного набору. (Для меню «Файл» рис.1.1)

    - 6 -

    Інформація про кожному пункті підменю

    «Файл»

    < br>"Новий" - створення нового файлу з нашими записами, а перед цим збереженняпопереднього файлу.
    "Відкрити" - відкриття потрібного файлу із записами, раніше збереженого навінчестері (жорсткий диск).
    "Зберегти" - збереження змін відкритого в даний момент файлу ззаписами.
    "Експорт даних" - збереження відкритого файлу в текстовий документ.
    "Вихід" - збереження змін (при бажанні) і закриття програми.

    «Правка»

    "Пошук" - знайти потрібний текст в цьому файлі.
    "Скасувати" - скасувати останні дія користувача.
    "Копіювати" - копіювання виділеного тексту в буфер обміну.
    "Вирізати" - вирізання виділеного тексту в буфер обміну.
    "Вставити" - вставка тексту лежить в буфері обміну.
    "Очистити" - видалити весь текст в цьому файлі.
    "Шрифт" - змінити шрифт написання слів.
    "Дата і час" - вставити сьогоднішню дату і час у вікно редагування.

    «Екстра»
    "Довідник друзів" - програма в якій можна записувати інформацію
    (адреса, телефон і т.д.) про своїх друзів, знайомих і т.д.
    "Media Player" - програма говорить сама за себе, в ній можна прослухатимузичні композиції і переглянути відео-файли.
    "CD-Rom" - програма для відкриття і закриття лотка CD-ROM'а.
    "Нагадати про ..." - програма для нагадування через заданий час.

    Для більш барвистого інтерфейсу для кожної кнопки я поставивіндивідуальну картинку, яка говорить про функції кнопки та її назві.
    Для цього спочатку візьмемо компонент ImageList з закладки Win32 і в ньогозавантажимо потрібні нам картинки. Для того щоб додати потрібну картинугукнемо два рази в ImageList1 і натискаємо кнопку Add, вибираємо картинку інатискаємо Ok. Під кожною картинкою написано її номер, він потрібний для
    «Прикріплення» її до кнопки. Коли всі картинки завантажили, натискаємо один разна MainMenu1 і в інспектор об'єктів вибираємо властивість Images і зі спискувибираємо ImageList1. Тепер гукнемо два рази на MainMenu1, вибираємо кнопкуі в її властивості ImageIndex пишемо номер потрібної нам картинки.
    Для зручності використання функцій програми, створимо «Панельінструментів », на яку викладемо кнопки які, на мій погляд, будутьчасто використовуватися користувачем.

    - 7 -
    Для цього беремо з закладки Win32 компонент ToolBar, його ім'я буде
    ToolBar1. Додаємо кнопки на «Панель інструментів» натисканням правої кнопкина неї і натисканням команди New Button. Нам потрібно 13 кнопок: «Новий»,
    «Відкрити», «Зберегти», «Копіювати», «Вставити», «Вирізати», «Пошук»,
    «Шрифт», «Дата і час», «Media Player», «CD-Rom», «Знайомі», «Нагадуванняпро ... ». Що б відокремити групи кнопок таким знаком «|», потрібно вибрати New
    Separator, в контекстному меню ToolBar'а. Буде 5 груп, то створюємо 5
    Separator'ов. Тепер для кожної нової кнопки виставимо посилання на потрібнукнопку. Це робиться за допомогою властивості кнопки ToolBar'а - MenuItem.
    Гукнемо на потрібну кнопку і вибираємо MenuItem, і з випадаючого спискувибираємо потрібний номер кнопки, а що б перевірити під яким номером кнопка,наприклад, кнопка «Новий» потрібно в MainMenu1 (рис.1.1) клікнути на кнопку знаписом «Новий» і в інспектор об'єктів подивитися номер кнопки
    (ріс.1.4).

    Ріс.1.4
    Номер кнопки в MainMenu

    Коли всі посилання поставили можна виставити картинки на кожну кнопку,просто вибираємо властивість TollBar'a - Image і вибираємо ImageList1. Всікартинки виставлять самі. Тепер можна розділити кнопки на групи,наприклад:

    1. «Новий», «Відкрити», «Зберегти»

    2. «Копіювати», «Вставити», «Вирізати»

    3. «Пошук»

    4. «Шрифт»

    5. «Дата і час»

    6. «Media Player», «CD-Rom», «Знайомі», «Нагадати про ...»
    Так як кнопки розташовані по порядку, то просто «перетягнемо» Separator накінець кожної групи крім останньої.
    Перейдемо до створення годин.

    Беремо з закладки Win32, палітри компонентів, компонент CoolBar іперетягнемо його на форму. CoolBar автоматично підніметься до ToolBar 'у.
    Перенесемо із закладки Standard компонент Label на CoolBar і розмістимо їїближче до кінця CoolBar'a.

    На цьому створення інтерфейсу головної форми закінчено можна скомпілюватиі запустити проект, клавішею F9, повинно бути схоже на ріс.1.5.

    Рис. 1.5
    Скомпільований і запущений проект «Записна книжка»

    - 8 -

    Опис процедур і функцій компонентів головної форми

    Заповнення компонента MainMenu1.

    Меню «Файл»

    "Новий"

    Так як під час створення нового файлу буде відкриватися вікно для збереженняновий файл на жорсткий диск, то нам потрібен компонент SaveDialog із закладки
    Dialogs. Заходимо з головної форми Файл | Новий відкриється Вікно Редактора Кодуі в нього вставляємо наступний код з коментарями, після слова Begin:

    if savedialog1.Execute then begin// Запустити вікно збереження файлу

    memo1.Lines.SaveToFile (savedialog1.FileName + '. not');// Зберегтипопередній текст с

    // ім'ям яке ввели у вікні збереження файлу

    memo1.Clear ();// Очистити компонент Memo від попереднього тексту

    end;s: = savedialog1.FileName + '. not';// занести в змінну S ім'я файлу (длявідкриття файлу, коли програму знову запустять і для збереження в колипрограма працює).
    Настроїмо фільтр файлів (типи файлів в які можна зберігати файли), дляце в SaveDialog1 настроїмо властивість Filter: Filter Name: 'Файли програми';
    Filter: '*. not'.

    1. "Відкрити"

    Для відкриття файлів в Delphi є компонент OpenDialog. Перетягнемо цейкомпонент із закладки Dialogs на форму і відразу пропишемо його властивість Filterтак як і в SaveDialog. Заходимо Файл | Відкрити і вставляємо цей код, післяслова Begin:if opendialog1.Execute then// Відкрити вікно відкриття файлуmemo1.Lines.LoadFromFile (Opendialog1.FileName);// Завантажити в Memo1 файл
    S: = OpenDialog1.FileName;// занести в змінну S - ім'я файлу, длявідкриття коли

    // програму знову запустять і для збереження змін в процесі виконання

    // програми

    2. "Зберегти"

    Вставити цей код в властивість OnClick кнопки:memo1.Lines.SaveToFile (s);// зберегти змісту компонента Memo1 в файлс

    // ім'ям якого зберігається у змінній S

    3. "Експорт даних ..."

    Для цього потрібен ще один компонент SaveDialog і так як файл будезберігатися в «Текстовий документ», то у властивості Filter, компонента
    SaveDialog2, потрібно ввести: Filter Name: 'Текстовий документ', а Filter:
    '*. Txt'. Тепер вставити наступний код в кнопку:if SaveDialog2.Execute then// запустити вікно збереження файлу

    - 9 -

    memo1.Lines.SaveToFile (Savedialog2.FileName + '. txt');// збереження файлу зрозширенням

    // txt

    4. "Вихід"

    Для закриття програми в Delphi є один оператор CLOSE. Вставити цейоператор в кнопку.

    Налаштування меню «Файл» - завершено.

    Меню «Правка»

    1. "Пошук"

    Для пошуку потрібного тексту в Delphi є компонент FindDialog. Перенесемоцей компонент із закладки Dialogs.
    Вставляємо наступний код в OnClick кнопки:
    Spos: = memo1.SelStart;// Запам'ятовування позиції курсоруwith finddialog1 do begin
    (Початкове значення пошуку тексту, виділений в Мемо)findtext: = memo1.SelText;
    //Позиціювання вікна діалогу внизу Memoposition: = point (mainform.Left, mainform.Top + memo1.Top + memo1.Height);
    //Удолнеія з діалогу кнопок "Вгору", "Вниз", "Тільки слово цилеком"options: = options + [frhideupdown, frhidewholeword];execute;// запуск діалогуend;end;
    Тепер в OnFind компонента FindDialog1 вставляємо наступний код:with finddialog1 do begin if frmatchcase in options
    //пошук з урахуванням регіструthen
    Memo1.SelStart: = pos (findtext, copy (memo1.Lines.Text, spos +1, Length (memo1.Lines
    . text))) + spos-1 else
    //пошук без обліку регістру
    Memo1.SelStart: = pos (ansilowercase (findtext), ansilowercase (copy (memo1.Lines.Text, spos +1, Length (memo1.Lines.text ))))+ spos-1; if memo1.SelStart> = spos then begin

    // виділення знайденого тексту memo1.SelLength: = Length ( findtext);

    // зміна початкової позиції пошуку spos: = memo1.SelStart + memo1.SelLength 1; end else

    - 10 - if messagedlg ( 'Текст "' + findtext + ' "ненайден', mtconfirmation, [mbok], 0)mrok then closedialog; memo1.SetFocus;end;
    Тепер потрібно оголосити змінну Spos, вгорі вікна редактора коду потрібнознайти оператор VAR, перед усіма процедурами і функціями і написати післянього Spos: integer;
    Змінна Spos зберігає позицію, починаючи з якої треба проводити пошук.

    2. "Скасувати"

    Для скасування останньої зміни тексту, компонент Memo має процедуру
    Undo.
    Цей код потрібно вставити в кнопку:

    Memo1.Undo;// скасувати останні дію

    3. "Копіювати"

    Для копіювання, у буфер обміну, виділеного тексту в компоненті Memoє процедура CopyToClipboard. Цю процедуру треба вставити в кнопку:
    Memo1.CopyToClipboard;// скопіювати текст у буфер обміну

    4. "Вирізати"

    Для вирізування виділеного тексту, в буфер обміну, в компоненті Memo єпроцедура CutToClipboard. Цю процедуру треба вставити в кнопку:

    Memo1.CutToClipboard;// вирізання тексту в буфер обміну

    5. "Вставити"

    Для вставки тексту який лежить в буфері обміну в компоненті Memo єпроцедура PasteFromClipboard. Цю процедуру треба вставити в кнопку:
    Memo1.PasteFromClipboard;// вставити текст з буфера обміну

    6. "Очистити"

    Для того щоб очистити вікно Memo від тексту, цей компонент маєпроцедуру Clear.
    Цю процедуру вставляємо в кнопку:
    Memo1.Clear;// очистити Memo від тексту

    7. "Шрифт"

    Для зміни шрифту в Delphi є компонент FontDialog. Через йоговластивість Font

    - 11 --можна змінювати властивості різних компонентів мають цю властивість, в томучислі йкомпонента Memo. Переносимо цей компонент із закладки Dialogs на форму і впроцедурі OnClick кнопки пишемо наступний код:if FontDialog1.Execute then begin// запустити вікно FontDialog1
    Memo1.Font: = Fontdialog1.Font;// присвоїти значення FontDialog1 компоненту
    Memo1

    8. "Дата і час"

    Для того, щоб вставити в Memo1 дату і час є процедура
    DateTimeToString. Вставити наступний код в процедуру кнопки OnClick: var TD: String;// мінлива в яку занесеться дата і час begin
    (заносимо в змінну TD дату з параметрами: «Дата» «Місяць» «Рік» ічас з парамтрамі «Годин» «Хвилин» «Секунд»)

    DateTimeToString (TD, 'dd mmmm yyyyyy "р." hh: nn: ss', Now);

    Memo1 . SelText: = TD;// вставити на місце курсору дату і час якийлежить в TD

    Налаштування головного меню закінчено.
    Меню: «Екстра» залишаємо незаповненим, тому що потрібно створити потрібніпрограми.

    Створення годин на головній формі
    Для показу часу в Delphi є ще одна процедура FormatDateTime, алеце процедура показує час в даний момент коли вона була викликана, длятого що кожну секунду оновлювалося час, а то є показувала час,потрібно використовувати компонент Timer, який знаходиться на закладці System,палітри компонентів Delphi.
    Переносимо Timer на форму і в його процедурою OnTimer потрібно вставитинаступний код:

    Label1.Caption: = FormatDateTime ( 'Зараз:' + 'hh: mm: ss AM/PM', Now ());< br>(Змінюємо напис на Label1 на: "Зараз: 'Годинник': 'хвилини': 'Секунди' 'AM' або
    'PM' ")

    Збереження настройок програми
    Так як нам потрібно щоб зберігалися деякі параметри програми, то дляцього буду використовувати ini файл. Для збереження потрібно в процедурі OnCloseголовної форми вставити наступний код:uses inifiles;
    ...var
    IniFile: TIniFile;begin
    IniFile: = TIniFile.Create ( 'Notebook.ini');// створення ini файлу, якщо йогоне існує
    IniFile.WriteString ( 'MainOptions', 'Base', s);// записати значеннязмінної S
    (Зберегти ім'я шрифту, компонента Memo1)
    IniFile.WriteString ( 'MainOptions', 'Name font', memo1.Font.Name);
    (Зберегти розмір шрифту, компонента Memo1)
    IniFile.WriteInteger ( 'MainOptions', 'Size', memo1.Font.Size);
    (Зберегти колір шрифту, компонента Memo1)
    IniFile.WriteInteger ( 'MainOptions', 'Color', memo1.Font.Color);inifile.Free;// звільнити пам'ять

    - 12 -
    Для того, щоб користувач не забув зберегти зміни, в OnClose форми,після inifile.free, вставимо код, який буде виводити вікно із запитом прозбереження змін:
    (вивести повідомлення про підтвердження збереження змін у файлі: «Так» або
    «Ні»)case messagedlg ( 'Зберегти зміна?', mtconfirmation, [mbyes, mbno], 0) of mryes: memo1.Lines.SaveToFile (s);// якщо «Так», то зберегти з ім'ям Send;

    Завантаження налаштувань програми

    Для того щоб завантажити нам збереження, потрібно у процедурі форми OnCreateвставити наступний код:var IniFile: TIniFile; begin
    IniFile: = TIniFile.Create ( 'Notebook.ini');// читаємо або створюємо файл inis: = IniFile.ReadString ( 'MainOptions', 'Base','');// заносимо в змінну Sзначення
    (виставляємо ім'я шрифту для Memo1)memo1.Font.Name: = IniFile.ReadString ( 'MainOptions', 'Name font','');< br>(виставляємо розмір шрифту для Memo1)memo1.Font.Size: = IniFile.ReadInteger ( 'MainOptions', 'Size', 0);
    (виставляємо колір шрифту для Memo1)memo1.Font.Color: = IniFile.ReadInteger ( 'MainOptions', 'Color', 0);inifile.Free;
    Для того щоб відкрився останній файл який був відкритий перед закриттям,потрібно OnCreate форми після оператора Inifile.free, вставити наступний код:memo1.Lines.LoadFromFile (s);// завантажити файл з ім'ям S
    Тому що, якщо потрібно буде змінити шрифт тексту то при запуску вікнаналаштування шрифту там буде всі настройки за замовчуванням і пройдеться мінятивсі параметри, а щоб цього не робити потрібно присвоїти значення від Memo1 до
    FontDialog. Вставити наступний код, після Memo1.Lines.LoadFromFile (s):
    FontDialog1.Font: = Memo1.Font; (привласнити всі параметри які знаходяться ввластивість Font)

    На цьому створення головної форми закінчено. Чи можна скомпілювати і запустити проект, і якщо все зроблено правильно, то помилок не яких бути не повинно.

    - 13 -

    Опис допоміжних програм, які були використані в програмі «Записна книжка»

    «Довідник друзів»

    Постановка завдання

    Так як у програмі «Довідник друзів» потрібно буде записувати телефон,адреса, прізвище та ім'я людини те потрібен компонент який міг би цедозволити. Можна використовувати базу даних для цих цілей, але Delphi маєкомпонент StringGrid. Для StringGrid'а непотрібно додаткових компонентів,а для роботи з базами даних потрібно кілька компонентів, які лишезбільшують розмір програми. На формі буде 3 кнопки: «Додати» (додатирядок), «Видалити» (видалити виделіную рядок), «Вихід» (зберегти ізакрити програму).

    Створення інтерфейсу

    У властивості Caption форми введемо текст: 'Довідник друзів', а у властивостіформи Name введемо ім'я форми: 'Dryzi'. У властивості форми AutoSize потрібновиставити True, на те щоб форма змінювала розмір разом з компонентами.
    Перенесемо з закладки Additional компонент StringGrid на форму. Виставляємонаступні властивості цього компонента:

    1.ColCount = 6 (кількість стовпців)

    2.FixedCols = 0 (зафіксувати (не можна змінювати) перший стовпець)

    3 . FixedRows = 1 (зафіксувати (не можна змінювати) перший рядок)

    4.RowCount = 2 (кількість стрічок)

    5.SrollBars = ssVertical (повзунок вертикального типу)
    Перенесемо на форму 3 кнопки BitBtn. Ці кнопки дає можливо прікепіть доним піктограму. Назвемо кнопки: 1. «Додати»

    2. «Видалити»

    3. «Вийти»
    Помістимо ці 3 кнопки зверху StringGrid1.

    Опис процедур і функцій

    Почнемо з кнопок. У кнопку «Додати» вставляємо наступний код:
    StringGrid1.RowCount: = StringGrid1.RowCount 1; (додати рядок)
    У кнопку «Видалити» вставляємо код:var i, j: Integer;begin j: = StringGrid1.Row;// рядок з виділенням
    StringGrid1.Rows [j]. Clear;// очистити виділіную рядок for i: = j to StringGrid1.RowCount-2 do// цикл знаходження виделіной рядка

    - 14 -

    StringGrid1.Rows [i]. Assign (StringGrid1.Rows [i +1]);//

    StringGrid1.RowCount: = StringGrid1. RowCount-1;// видалити рядок
    У кнопку «Вийти» просто вставимо один оператор: 'Close'.

    Для кожної кнопки потрібно підібрати піктограму, для цього потрібновикористовувати властивість Glyph.
    Так як це довідник, то потрібно щоб всі записи зберігалися, при виході,і завантажувалися, при запуску програми. Для цього у вікні Редактора Коду міжсловами Type і де оголошуються інші процедури потрібно написати: 'Procedure
    SaveGrid; ', а після слова implementation потрібно вставити наступний код:procedure TBaseForm.SaveGrid;// ім'я процедуриvar f: textfile; x, y: integer;begin assignfile (f, 'Base.zap');// відкрити файл' Base 'rewrite (f);// переписати файл writeln (f, StringGrid1.colcount);// перегляд значення стовпців writeln (f, StringGrid1.rowcount) ;// перегляд значення рядків for X: = 0 to StringGrid1.colcount - 1 do// початок циклу запису значеннякожного осередку for y: = 0 to StringGrid1.rowcount - 1 do writeln (F, StringGrid1.cells [x, y]); closefile (f);// закрити файлend;
    А до завантаження: аналогічним способом оголосимо процедуру завантаження: 'Procedure
    LoadGrid ', а процедура завантаження має наступний код:procedure TBaseForm.LoadGrid;var f: textfile; temp, x, y: integer; tempstr: string;begin assignfile (f, 'Base.zap');// відкрити файл 'Base' reset (f);// Збити файл readln (f, temp);// Прочитати файл
    StringGrid1.colcount: = temp;// виставити кількість стовпців readln (f, temp);// прочитати файл
    StringGrid1.rowcount: = temp;// виставити кількість рядків for X: = 0 to StringGrid1.colcount - 1 do// початок циклу заповненнякожного осередку for y: = 0 to StringGrid1.rowcount - 1 do begin readln (F, tempstr);

    StringGrid1.cells [x, y]: = tempstr; end; closefile (f);// закрити файлend;

    - 15 -
    Для завантаження потрібно в властивість OnCreate форми вставити наступний оператор:
    'LoadGrid;'

    Для збереження потрібно в властивість OnClose форми вставити наступнийоператор: 'SaveGrid;'.
    Напишемо назви колонок, для цього в властивість OnCreate форми вставимонаступний код:with stringgrid1 do begin
    Cells [0,0]: = '№';// назви колонки з координатами
    Cells [1,0]: = 'Прізвище';// назви колонки з координатами
    Cells [2,0]: = 'Назва';// назви колонки з координатами
    Cells [3,0]: = 'По батькові';// назви колонки з координатами
    Cells [4,0]: = 'Адреса';// назви колонки з координатами
    Cells [5,0]: = 'Телефон';// назви колонки з координатами
    Все на цьому створення програми «Довідник друзів» закінчений. Тепер можнаскомпілювати і запустити програму. Якщо все правильно, то можназберегти цю програму.

    «Media Player»

    Постановка завдання

    "Media Player" - програма, яка повинна відтворювати музичнікомпозиції та відео-файли. У Delphi є універсальний компонент
    MediaPlayer, який виконує потрібні нам функції. Так само на формі буде 2кнопки для відкриття файлу і для виходу з програми.

    Створення інтерфейсу

    У властивості Caption форми введемо текст: 'Media Player', а у властивості форми
    Name введемо ім'я форми: 'MediaP'. У властивості форми AutoSize потрібно виставити
    True, на те щоб форма змінювала розмір разом з компонентами.
    Переносимо компонент MediaPlayer із закладки System на форму. Переносимо 2кнопки BitBtn з закладки Additional і компонент OpenDialog із закладки
    Dialogs.

    Опис процедур і функцій

    Одну кнопку називаємо: «Відкрити файл», а другий: «Закрити».
    Налаштовуємо Filter компонента OpenDialog1: Filter Name: 'Відео-файли тамузика ', Filter:' *. avi; *. mp3; *. wav '.
    У кнопку «Відкрити файл» вставляємо наступний код:if opendialog1.Execute then// відкрити вікно вибору файлуif opendialog1.FileName =''then writeln ( 'Ви не вибрали файл !!!')

    else begin// абоmediaplayer1.FileName: = opendialog1.FileName;// занести шлях до файлуmediaplayer1.Open;// відкрити файлend;
    Тепер в кнопку «Закрити» потрібно вставити оператор 'Close ;'.

    Все на цьому створення програми «Media Player» закінчений. Тепер можна скомпілювати і запустити програму. Збережіть цей проект.

    - 16 -

    «CD-Rom»

    Постановка завдання

    Так як нам потрібно лише відкрити або закрити лоток CD-ROM'а, то можнавикористовувати тільки 2 кнопки, тому що при закритті лотка CD-ROM'а можнаі закрити програму.

    Створення інтерфейсу

    У властивості Caption форми введемо текст: 'CD-Rom', а у властивості форми Nameвведемо ім'я форми: 'CDRom'.
    Перенесемо 2 кнопки BitBtn на форму. Підпишемо кожну кнопку, наприклад так:
    «Відкрити CD» і «Закрити CD». Виставимо для кожної кнопки відповіднупіктограму.

    Опис процедур і функцій

    Щоб працювала програма потрібно підключити модуль MMSystem в USES форми.
    Для кнопки яка буде відкривати лоток, потрібен наступний код:mciSendString ( 'Set cdaudio door open wait', nil, 0, handle);
    Для кнопки яка буде закривати лоток, потрібен наступний код:mciSendString ( 'Set cdaudio door closed wait', nil, 0, handle);

    Все на цьому створення програми «CD-Rom» закінчений. Тепер можнаскомпілювати і запустити програму. Збережіть цей проект.

    «Нагадати про ...»

    Постановка завдання

    Так як нам потрібно щоб через заданий час, виводилося будь-якеповідомлення, то нам потрібно два компоненти для вибору проміжку часу (годиниі хвилини), компонент для введення потрібного повідомлення. Так як ще будезвуковий сигнал, то простіше за все буде використовувати компонент MediaPlayer.
    На формі буде писатися скільки залишилося час.

    Створення інтерфейсу

    Вікно для введення повідомлення і для налаштування часу будуть перебувати всерединікомпонента GroupBox. Цей компонент потрібно перетягнути на форму із закладки
    Standard. Для того щоб можна було написати повідомлення, будемо використовуватикомпонент Edit який знаходиться на тій же сторінці, його потрібно перетягнутина компонент GroupBox1. Властивість форми AutoSize виставити True.
    Тепер перенесемо ще один компонент GroupBox і в нього вставимо двакомпонента ComboBox, які потрібні для вибору часу. Перенесемо на
    GroupBox2 компонент CheckBox, який буде показувати відтворити аудіо -файл або непотрібно.
    Перенесемо на форму 4 кнопки BitBtn. Потрібен компонент OpenDialog черезякий буде

    - 17 --вибір аудіо-файлу, його можна знайти на закладці Dialogs.
    Потрібно 3 компоненти Timer. 2 Timer'а будуть використовуватися в залежностічи потрібно програвати аудіо-файл чи ні, а 3 для показу скільки часзалишилося. Для всіх 3х таймерів в їхні властивості Enabled потрібно виставити
    False.
    Перенесемо на форму MediaPlayer із закладки System в какой то компонент
    GroupBox, що дасть можливість не заважати розмірами форми так як MediaPlayerне буде видно.
    Коли все зробити, то розмістіть всі компоненти як показано на ріс.2.4

    Ріс.2.4
    Процес створення інтерфейсу

    Змінимо написи на компонентах.
    У властивості Caption форми введемо текст: 'Нагадати про ...', а у властивості форми
    Name введемо ім'я форми: 'Memory'.
    Так як в GroupBox1 знаходитися компонент Edit1 і використовується длястворенні повідомлення, то у властивості Caption компонента GroupBox1 можнаввести: 'Нагадати про:'.
    У властивості Text, компонента Edit1, потрібно стерти текст.

    Так як в GroupBox2 знаходяться два компоненти ComboBox яківикористовується для встановлення часу, а компонент CheckBox1 длявідтворення файлу, то у властивості Caption компонента GroupBox2 можнаввести: 'Установки'. У властивості Caption компонента CheckBox1 можна ввести:
    'Відтворити аудіо-файл'.
    Так як Label1 буде показувати лічильник, то в його властивість Caption можнаввести початкове значення лічильника: 'Залишилось: 0 год. 0 хв. 0 сек. '.
    Кнопку BitBtn1 підпишемо:' Аудіо-файл ', тому що при натискання на кнопкубудемо вибирати аудіо-файл.
    Кнопку BitBtn2 підпишемо: 'Остан.таймер', тому що при натискання на кнопкубуде виключатися таймер.
    Кнопку BitBtn4 підпишемо: 'Ok', тому що при натискання на кнопку програмарозпочне свою роботу.
    Кнопку BitBtn4 підпишемо: 'Закрити', тому що при натискання на кнопку будезакриватися програма, але таймер не перестане працювати.
    У властивість Items компонента ComboBox1 потрібно вставити назви годин,наприклад, введемо, у стовпчик, без ком, в стовпчик: '0 годин, 1 година, 2години, 3 години, 4 години, 5 годин '. А в ComboBox2 можна вставити, без ком, встовпчик: '0 хв., 1 хв., 2 хв., 3 хв., 4 хв., 5 хв., 10 хв., 15 хв., 20хв., 25 хв., 30 хв., 35 хв., 40 хв., 45 хв., 50 хв., 55 хв .'.

    - 18 -
    Для кожної кнопки можна виставити піктограму, для цього є властивістькнопок Glyph.

    Опис процедур і функцій

    1. Нам потрібно глобально оголосити кілька змінних, тобто щобможна було використовувати ці змінні в будь-якій процедурі або функції. Дляцього Вікні редактора Коду знаходимо оператор VAR і після нього пишемо:

    Hour, Sec, min, a, b: longint;

    Змінна Hour і Min будуть використовуватися для відображення лічильника, азмінних A і B для обчислення загального часу (потрібно для Timer).
    2.Компонент Timer1 буде використовуватися, якщо аудіо файл не обрано. Колипройде певний час, то виводитися повідомлення без звукового сигналу. Увластивість OnTimer потрібно вставити наступний код:timer4.Enabled: = false;// вимкнути таймер 3timer1.Enabled: = false;// вимкнути таймер 1
    BitBtn4.Click;// натиснути кнопку
    ShowMessage ( 'Напоменаніе про: "' + edit1.Text +'"');// вивести повідомлення
    BitBtn3.Enabled: = true;// можна натискати на кнопку
    BitBtn2.Enabled: = false;// не можна натискати на кнопку

    3.Компонент Timer2 буде використовуватися, якщо аудіо файл повиненВідтворити. Коли пройде певний час, то виводитися повідомлення ззвуковим сигналом. У властивість OnTimer потрібно вставити наступний код:mediaplayer1.Open;// Відкрити аудіо-файлmediaplayer1.Play;// Відтворити файлtimer4.Enabled: = false;// виключити таймер3timer2.Enabled: = false;// виключити таймер2
    BitBtn4.Click;// натиснути кнопку
    ShowMessage ( 'Напоменаніе про: "' + edit1.Text +'"');// вивести повідомленняmediaplayer1.Stop;// виклічіть аудіо-файл
    BitBtn2.Enabled: = true;// на кнопку можна натискати
    4.Компонент Timer3 буде використовуватися для показу лічильника. У властивість
    OnTimer потрібно вставити наступний код:
    Label1.Caption: = 'Залишилось:' + IntToStr (hour) + 'час.' + IntToStr (min-1) + 'хв. '+ IntToStr (sec-1) +' сек .';// напис на мітціsec: = sec-1;// змінну sec зменшити на 1if sec = 0 then begin// якщо sec = 0 тоsec: = 59;min: = min-1;// змінну min зменшити на 1end;if (min = 0) and (hour> 0) and (sec> 0) then begin// якщо min = 0 і hour = 0 іsec = 0 тоhour: = hour-1;// hour зменшити на 1min: = 60;// min привласнити 60end;

    - 19 -
    5.У властивість OnChange компонента ComboBox1, пишемо наступний код дляопріделенія скільки годин вибрав користувач:case ComboBox3.ItemIndex of// якщо користувач вибрав, то а: = значенням
    0: a: = 0;
    1: a: = 60 * 60000;
    2: a: = 2 * (60 * 60000);
    3: a: = 3 * (60 * 60000);
    4: a: = 4 * (60 * 60000);
    5: a: = 5 * (60 * 60000);end;
    6.У властивість OnChange компонента ComboBox2, пишемо наступний код дляопріделенія скільки хвилин вибрав користувач:case Combobox1.ItemIndex of// якщо користувач вибрав, то в b: = значенням
    0: b: = 0;
    1: b: = 60000;
    2: b: = 2 * 60000;
    3: b: = 3 * 60000;
    4: b: = 4 * 60000;
    5: b: = 5 * 60000;
    6: b: = 10 * 60000;
    7: b: = 15 * 60000;
    8: b: = 20 * 60000;
    9: b: = 25 * 60000;
    10: b: = 30 * 60000;
    11: b: = 35 * 60000;
    12: b: = 40 * 60000;
    13: b: = 45 * 60000;
    14: b: = 50 * 60000;
    15: b: = 55 * 60000;
    7.У властивість OnClick потрібно вставити наступний код, для того щобдозволити відтворити аудіо-файл або заборонити:if CheckBox1.State = cbChecked then// якщо естьгалочка то
    BitBtn2.Enabled: = true// можна натискати на кнопку, щоб вибрати аудіо-файлelse// або
    BitBtn2.Enabled: = false;// не можна натискати на кнопку, щоб вибрати аудіо-файл
    8. У кнопку, щоб вибрати аудіо-файла потрібно вставити наступний код:if opendialog1.Execute then// відкрити вікно вибору файлуmediaplayer1.FileName: = opendialog1.FileName;// записати шлях до файлу в
    MediaPlayer
    9. У кнопку для зупинки таймера потрібно вставити код:timer1.Enabled: = false;// вимкнути таймер 1timer2.Enabled: = false;// вимкнути таймер 2timer4.Enabled: = false;// виключити таймі?? 4
    (Написати на Label1)label1.Caption: = 'Залишилось:' + inttostr (0) + 'час.' + IntToStr (0) + 'хв. '+ IntToStr (0) +' сек. ';
    BitBtn4.Enabled: = false;// можна натискати на кнопку

    - 20 -
    10.Прі натискання на кнопку «Ok» має перевірятися чи буде відтворюватися аудіо-файл чи ні. Так само потрібно обчислити час роботи таймера, адля компонента Timer потрібно ввести милі секунди і включитися таймер длялічильника. Для цього в властивість OnClick потрібно вставити код:if checkbox1.Checked = true then// якщо включений аудіо-файл, тоbegintimer2.Interval: = a + b;// встановити час таймераtimer2.Enabled: = true;// включити таймерendelse// абоbegintimer1.Interval: = a + b;// встановити час таймераtimer1.Enabled: = true;// включити таймерend;
    BitBtn4.Enabled: = true;// можна натискати на кнопку
    Timer4.Enabled: = true;// включити таймерsec: = 60;// sec: = 60min: = b div 60000;// min: = b розділити на 60000hour: = combobox3.ItemIndex;end;
    11. У кнопку «Закрити» потрібно вставити оператор: 'Close ;'.

    На цьому створення інтерфейсу закінчено, можна скомпілювати і запуститипроект, клавішею F9, повинно бути схоже на ріс.2.5.

    Ріс.2.5
    Програма в процесі роботи

    залишається тепер з'єднати все в одну програму. Заходимо, Delphi, уменю Project | Add to Project і вибираємо наші програми. У головнійпрограму в OnClick кнопок потрібно вставити оператор:
    XXX.Show;// показати форму з ім'ям XXX
    Замість XXX потрібно написати назву форми тієї чи іншої програми.

    - 21 -

    Висновок


    У процесі розробки програми я зміцнив свої навички роботи в середовищіпрограмування Delphi і навчився створювати і працювати з базами данихчерез таблиці Paradox 7. Але так як я тільки вчуся програмування, тозвичайно у програми є деякі недоліки:

    1. Чи не зберігається «Нарис», тобто не можна зберегти стиль тексту

    (курсив, жирний, напівжирний і т.д.).

    2. Нету «Органайзер» 'а.
    Ці недоліки будуть вирішені.

    - 22 -

    Список використаної літератури

    1. А.Я. Архангельський «Програмування в Delphi 6», Москва, ЗАТ

    «Видавництво БИНОМ», 2001 р., 1120 с.

    2. «Delphi World» - статті. (www.delphiworld.narod.ru).

    - 23 -

    -----------------------

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status