|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Крок 2. Написання коду1. Створення нового файлу з попередньою перевіркою збереження поточного файлу. Для створення інтерфейсу необхідне виведення вікна повідомлення (функція MessageBox), що слугує для підтвердження команд (створення, збереження, відкриття файлу). Викликається вікно таким чином: Application.MessageBox(‘Текст вікна’, ‘Заголовок вікна’, комбінація кнопок or іконок вікна); Для завдання комбінації кнопок Yes – Так, No – Ні, Cancel – Скасувати, що відображаються на поверхні вікна повідомлення, використовується константа MB_YESNOCANCEL. Для завдання іконки попередження (icon warning) використовується константа MB_ICONWARNING. При цьому функція MessageBox повертає код натиснутої клавіші (IDYES, IDNO, IDCANCEL), який використовується для подальшого аналізу. Згенеруйте процедуру оброблення команди New меню File і введіть туди наступний код (при написанні оброблювачів змінюйте імена команд із прийнятих за умовчання New1, Save1, Open1, SaveAs1 на New, Save, Open, SaveAs і т. ін.): procedure TEditor.NewClick(Sender: TObject); Var Result: Integer; begin If Memo.Modified Then //Якщо були зміни у редакторі Memo begin // Генерація вікна повідомлення MessageBox Result:= Application.MessageBox(‘Зберегти зміни?’, ‘Підтвердження збереження’, MB_YESNOCANCEL or MB_ICONWARNING); // Якщо натиснута кнопка ‘Так’ // викликати оброблювач збереження SaveClick If Result = IDYES Then SaveClick(Sender); // Інакше повернутися до попереднього режиму роботи If Result = IDCANCEL Then Exit; end ; // Стирання рядків у компоненті Memo, якщо вони є If Memo.Lines.Count > 0 Then Memo.Clear; // Установити значення FileName діалогу SaveDialog // у порожній рядок (тобто файл ще не збережений) SaveDialog.FileName:= ‘‘; end ; 2. Створення процедури оброблення команди Open меню File. Перший блок оброблювача повинен перевірити, чи був змінений зміст компонента Memo і, якщо так, викликати діалог збереження. Цей блок програми ідентичний введеному в процедурі оброблення команди New, тому можна просто викликати процедуру оброблення: NewClick(Sender); Далі необхідно викликати діалог FileOpen. Якщо у ньому натиснута кнопка Ok – відкрити файл за допомогою методу LoadFromFile; NewClick(Sender); // Викликати оброблювач очищення вікна // Очистити властивість FileName OpenDialog.FileName:= ‘‘; If OpenDialog.Execute Then // Якщо здійснений вибір файлу begin // Завантажити у редактор зміст файлу, // обраного в діалозі Memo.Lines.LoadFromFile(OpenDialog.FileName); // Присвоїти імені файлу в діалозі збереження // ім’я файлу, обраного у діалозі відкриття SaveDialog.FileName:= OpenDialog.FileName; end ; 3. Процедура оброблення для команди меню Save повинна містити наступний код: // Якщо ім’я файлу вже було введене If SaveDialog.FileName <> ‘’ Then Begin // Зберегти файл Memo.Lines.SaveToFile(SaveDialog.FileName); // Обнулити прапорець модифікації тексту Memo.Modified:= false; End // Інакше викликати діалог Зберегти Як else SaveAsClick(Sender); 4. Процедура оброблення команди меню SaveAs (Зберегти Як) містить наступний код: Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |