↑ вверх

Помощь дистанционщикам!
ДО СибГУТИ (www.do.sibsutis.ru),
ДО СибАГС (www.sapanet.ru),
ДО НГУЭиУ (sdo.nsuem.ru),
ДО СибУПК (sdo.sibupk.su) и др ВУЗы

Этот сайт продаётся. По всем вопросам обращаться по +7 913 923-45-34 (Денис)
Корзина пуста!
Обратная связь




Лаб работа 02

25000
      
Просмотров: 358
Тип работы: Лабораторная работа
Название предмета: Основы визуального программирования
Тема/вариант: Лаб работа 02
Объем работы: 17
ВУЗ: СибГУТИ
Дата выполнения: 2017-12-05
Размер файла, тип файла: 757.72 Kb, , TXT, CFG, DOF, DPR, EXE, RES, ~DPR, DCU, DDP, DFM, PAS, ~DDP, ~DFM, ~PAS, DOC
Прикрепленные файлы: Курс 529 (8430 Kb)

ТЕМА: Компоненты MainMenu, PopupMenu, Memo, OpenDialog, SaveDialog.

            Создание вложенного динамического меню.

ЗАДАНИЕ 1:     

Создание простейшего редактора, который работает с файлом memos.txt, находящемся в текущей папке.

1. Создайте главное меню – компонент MainMenu - с пунктами:

File

Help

                                                          

New

About… F1

Open…   F3

 

Close

 

Save       F2

 

Save As…

 

Exit    Alt+X

 

1.1. Создайте обработчики событий, поступающих от объектов:

Exit1 – закрытие формы;

About1 – информация об авторах в стандартном окне (MessageDlg); 

 

2. Создать всплывающее меню – компонент PopupMenu, содержащее пункты: Save, About, Exit;

 

3. Поместите на форму объект Label. Присвойте свойству Caption значение FileName;

 

 4. Поместите на форму объект Edit под объектом Label. Измените значение свойства Text объекта Edit1 на memos.txt;

5. Поместите на форму объект Memo. Измените его размер и выровняйте компоненты, расположенные на форме, используя в главном меню Edit | Align. (Для выделения группы компонентов используйте ‘захват’ компонентов левой кнопкой мыши);

 

6. Уберите у свойства Lines объекта Memo1 его значение. Установите вертикальную и горизонтальную полосы прокрутки, используя свойство ScrollBar объекта Memo1;

 

7. Для создания обработчика события, заключающегося в выборе пункта Save в главном меню, в процедуру обработки события OnClick объекта Save1 главного меню запишите код:  Memo1.Lines.SaveToFile(‘memos.txt’);

Для обработки события OnClick объекта Save2 всплывающего меню подключите ту же процедуру Save1Click;

8. В процедуру обработки события OnActive формы запишите следующий код:

If FileExists(‘memos.txt’) then Memo1.Lines.LoadFromFile(‘memos.txt’)

else Memo1.Lines.SaveToFile(‘memos.txt’);                      

      Тогда, если при запуске Приложения файл memos.txt существует в текущей папке, то он загружается в окно Memo1. В случае отсутствия файла memos.txt  в текущей папке создается новый пустой файл memos.txt (в файл записывается пустое значение свойства Lines объекта Memo1);

9. Для того, чтобы сразу после запуска Приложения курсор находился в окне объекта  Memo1, установите значения свойства ActiveControl формы, равным Memo1.

ЗАДАНИЕ 2:

Создание простейшего редактора, который работает с диалоговыми окнами открытия и сохранения файлов.

1.      Модифицируйте ранее созданный редактор:

2.      По событию OnClick объекта Open1 должны выполняться следующие действия:

·         Открываться диалоговое окно открытия файла;

·         При закрытии окна по кнопке Open:

-          В Memo1 загрузить выбранный файл;

-          В заголовок формы  - полное имя файла;

-          Memo1 сделать видимым;

-          Save1, SaveAs1 – включить (т.е. сделать доступными);

3.       По событию OnClick объекта Save1 должны выполняться следующие действия:

·         Сохраняться текст Memo1 в том же файле без запроса (Имя текущего файла является значением свойства Caption формы – см. обработчик события OnClick объекта Open1)

  (Запустите Приложение и проверьте работу Open1 и Save1, используя файл memos.txt) 

4.      По событию OnClick объекта SaveAs1 должны выполняться следующие действия:

·         В диалоговом окне сохранения файла должно предлагаться имя, заданное в заголовке формы;

·         Текст из окна  объекта Memo1 сохраняется в файле с выбранным пользователем именем;

 (Запустите Приложение и проверьте работу SaveAs1) 

5.      По событию OnClick объекта New1 должны выполняться следующие действия:

·         Очистить поле Lines объекта Memo1;

·         Memo1 сделать видимым;

·         SaveAs1 – включить (т.е. сделать доступным);

·         Save1 – выключить (т.е. сделать недоступным);

(Запустите Приложение и проверьте работу New1) 

6.      По событию OnClick объекта Close1 должны выполняться следующие действия:

·         Memo1 сделать невидимым;

·         SaveAs1, Save1 – выключить (т.е. сделать недоступными);

·         В заголовок формы – Form1; 

7.      Запустите Приложение и проверьте его работу.

8.      Сразу после запуска Приложения Memo1 должно быть невидимым;

При выборе пункта меню New, объект Memo1 должен становиться активным.

Установите свойство WindowState формы на значение wsMaximized.

ЗАДАНИЕ 3:

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

1.     

 
 

Создайте главное меню следующего вида:

2.      Команды Save, Save As не имеют обработчиков событий.

3.      В обработчике события OnClick  пункта меню New должно быть реализовано следующее:

¨         Пункты меню Save, Save As, Close становятся доступны.

¨         Если пункт Reopen доступен (т.е. содержит список конкретных файлов), то убирается пометка с имени файла (свойство Checked пункта меню) в подменю Reopen.

4.      В обработчике события OnClick  пункта меню Close должно быть реализовано следующее:

¨         Пункты меню Save, Save As, Close становятся недоступны.

¨         Убирается пометка в списке имен ранее открывавшихся файлов.

5.      Поместите на форму компонент OpenDialog.

6.      Команда Open открывает диалоговое окно открытия файла и, в случае выбора файла, добавляет его в подменю Reopen в качестве нулевого пункта и помечает этот пункт. При добавлении нового имени весь список имён смещается вниз.
 В обработчике события OnClick  пункта меню Open должно быть реализовано следующее:

     Открывается диалоговое окно открытия файла. Если пользователь выбрал файл для открытия, то выполняется следующее:

          Пункты меню Save, Save As, Close становятся доступны.

         Для пункта Reopen необходимо:

        Установить доступность.

                Выполнить смещение в имеющемся списке имен файлов на одну позицию вниз с сохранением свойства Visible от предыдущего элемента. При смещении списка изменяется нумерация в названии пунктов меню. Для изменения этой нумерации используйте процедуру Delete из модуля System ( Внимание! У пунктов меню тоже имеется метод Delete).

               В качестве нулевой строки вложенного меню установить подчеркнутую цифру 0, а за ней полное имя файла, полученное из диалогового окна. Свойство Visible этой строки установить равным True.

                Убрать старую пометку в списке имен файлов и установить пометку в нулевой строке.

     Добавьте в процедуру обработку ситуации, когда открываемый файл уже имеется в списке ( запомните его номер и при смещение вниз в списке имен не изменяйте пункты подменю Reopen , следующие за этим номером). Для выделения из строки списка полного имени файла используйте процедуру Delete из модуля System.

7.      В обработчике события OnClick  пункта вложенного меню должно быть реализовано следующее:

        Для пункта Reopen необходимо:

          Убрать старую пометку в списке имен файлов.

             Поставить пометку на том имени файла, по которому щелкнули мышкой, рассматривая параметр Sender, передаваемый в обработчик, как представитель класса TmenuItem.

8.      Дополните написанные обработчики событий, используя функцию function ExtractFileName(const FileName: string): string для выделения неполного имени файла, таким образом, чтобы на месте заголовка формы, кроме самого заголовка формы, отображалось ещё и неполное имя выбранного файла.

 

ЗАКАЗАТЬ РАБОТУ
Отправь нам своё задание, и мы поищем твою работу в нашей базе готовых работ. А если не найдем, то порекомендуем партнеров, которые качественно смогут выполнить твой заказ.
(doc, docx, rtf, zip, rar, bmp, jpeg) не более 5 Мб