CFrame: integer; // номер кадра

 

9. Создать и объявить процедуру OpenAvi

procedure TForm1.OpenAVI;

begin

Button1.Enabled:= False;

Button2.Enabled:= False; Button3.Enabled:= False;

RadioButton1.Enabled:= False; RadioButton2.Enabled:= False;

try

   Animate1.FileName:= Edit1.Text;

except

on Exception do

begin

   MessageDlg('Ошибка формата AVI файла.'+

      #13+'(Анимация не должна сопровождаться звуком.)',

      mtError,[mbOk],0);

   exit;

end; end;

Button1.Enabled:= True;

RadioButton1.Enabled:= True; RadioButton2.Enabled:= True;

end;

 

10. Для кнопки Выбрать (Button4) ввести код:

OpenDialog1.Title:= 'Выбрать AVI файл';

 OpenDialog1.InitialDir:='';

if OpenDialog1.Execute Then  Begin

   Edit1.Text:= OpenDialog1.FileName;

   OpenAVI;            End;

 

11. Для кнопки Пуск ввести код:

if Animate1.Active = False // в данный момент анимация нет then begin

Animate1.StartFrame:=1; // вывод с первого кадра

Animate1.StopFrame:=Animate1.FrameCount; //по последний кадр

Animate1.Active:=True;

Button1.caption:='Стоп';

RadioButton2.Enabled:=False;

end

else // анимация отображается

begin

Animate1.Active:=False; // остановить отображение

Button1.caption:='Пуск';

RadioButton2.Enabled:=True;

end;

 

12. Для переключателя Непрерывно ввести код:

Button1.Enabled:=True; // доступна кнопка Пуск

// сделать недоступными кнопки просмотра по кадрам

Form1.Button3.Enabled:=False;

Form1.Button2.Enabled:=False;

 

13. Для переключателя По кадрам ввести код:

Button2.Enabled:=True; // кнопка Следующий кадр доступна

Button3.Enabled:=False; //кнопка Предыдущий кадр недоступна

// сделать недоступной кнопку Пуск - вывод всей анимации

Button1.Enabled:=False;

Animate1.StartFrame:=1;

Animate1.StartFrame:=1;

CFrame:=1;

 

14. Для кнопки К следующему кадру ввести код:

if CFrame < Animate1.FrameCount Then Begin

CFrame:= CFrame + 1;

// вывести кадр

Animate1.StartFrame:= CFrame;

Animate1.StopFrame:= CFrame;

Animate1.Active:= True;

  if CFrame = Animate1.FrameCount // текущий кадр - последний

then Button2.Enabled:=False;

 End;

if CFrame > 1 then Button3.Enabled:= True;

 

15. Для кнопки К предыдущему кадру ввести код:

if CFrame > 1 then

begin

   CFrame:= CFrame - 1;

   // вывести кадр

   Animate1.StartFrame:= CFrame;

   Animate1.StopFrame:= CFrame;

   Animate1.Active:= True;

   if CFrame = 1 // текущий кадр - первый

       then Form1.Button3.Enabled:= False;

end;

if CFrame < Animate1.FrameCount then Button2.Enabled:= True;

 

16. Проверить работу приложения.

17. Добавить на форму пункт меню Справка.

18. Присоединить к проекту форму для выдачи Справки, для этого:

1. выбрать в меню File / New/Other;

2. выбрать вкладку Forms, на ней выбрать About box.

19. Привести форму в соответствие с образцом:

20. Самостоятельно доработать приложение для вызова окна справки (пункт Справка) и скрытие окна (кнопка Ок)

21. Результат показать преподавателю.

 



ПРАКТИЧЕСКАЯ РАБОТА № 13

 

Тема Программирование для Интернет

Цель работы: Получить навыки использования компонента WebBrowser.

Пояснения к работе

Начиная с пятой версии Delphi появился компонент WebBrowser который позволяет создать свой собственный браузер. Можно полностью поменять интерфейс, но принцип действия работы все равно будет, как у Internet Explorer.

Компонент WebBrowser находится на вкладке Internet, его основные свойства и методы приведены в таблице.

OffLine Включить / выключить автономный режим
Navigate Открыть HTML-документ
Refresh Обновить
Stop Остановить загрузку
GoHome На домашнюю страницу
GoForward Вперед
GoBack Назад

 

Компонент StatusBar – строка состояния представляет собой управляющий элемент, который отображает текущую информацию о содержимом окна, контекстные подсказки по текущему состоянию.

 

Постановка задачи

Разработать приложение, реализующее основные функции WEB-браузера.

 

Порядок выполнения

1. Создать новый проект и сохранить его.

2. Добавить на форму компонент ToolBar (Win32), изменить значение свойств: Height = 28, ShowCaptions =True, Flat = True

3. Добавить на ToolBar 5 кнопок: Назад, Обновить, Стоп, Домашняя страница, Вперед, для этого повторить 5 раз следующую последовательность:

· щелкнуть правой кнопкой мыши на компоненте ToolBar;

· выбрать New Button;

· изменить размеры кнопки Width = 67, Height =21;

· вставить разделитель кнопок, щелкнув правой кнопкой на ToolBar и выбрав New Separator;

· изменить свойства Caption для кнопки.

4. Добавить на форму компоненты Edit, командную кнопку, OpenDialogs и WebBrowser.

5. Привести форму в соответствие с образцом.

6. Для того, чтобы компоненты размещались по местам после изменения размера формы, для процедуры FormResize ввести код:

Edit1.Left:= 0;

Edit1.Top:= ToolBar1.Height + 2;

Button1.Top:= Edit1.Top;

Button1.Left:= Form1.ClientWidth - Button1.Width - 2;

WebBrowser1.Left:= 0;

WebBrowser1.Top:= Edit1.Top + Edit1.Height + 2;

//меняем размеры некоторых компонентов

Edit1.Width:= Form1.ClientWidth - Button1.Width - 4;

Button1.Height:= Edit1.Height;

WebBrowser1.Width:= Form1.ClientWidth;

WebBrowser1.Height:= Form1.ClientHeight - (Edit1.Top + Edit1.Height + 2);

 

7. Для кнопки Открыть ввести код:

If OpenDialog1.Execute Then Begin

WebBrowser1.Navigate(OpenDialog1.FileName);

Edit1.Text:= OpenDialog1.FileName;

WebBrowser1.Navigate(Edit1.Text); //загрузка документа

Edit1.SetFocus;  End;

8. Загрузить приложение, проверить работу кнопки Открыть.

9. Для кнопок панели ввести соответствующие коды:

WebBrowser1.GoBack //назад

 

WebBrowser1.Stop; //остановить загрузку

 

WebBrowser1.Refresh; //обновить страницу

 

WebBrowser1.GoHome; //на домашнюю страницу

 

WebBrowser1.GoForward; //вперед

10. Проверить работу приложения.

11. Добавить на форму компонент StatusBar (Win32)и изменить значение его свойства SimplePanel = True.

12.  Для компонента WebBrowser1 выбрать событие OnStatusTextChange и ввести код:

StatusBar1.SimpleText:= Text;

13. Добавить на форму компонент ProgressBar (Win32)и изменить значение его свойства Align =alButtom.

14. Для компонента WebBrowser1 выбрать событие OnProgressChange и ввести код:

ProgressBar1.Max:= ProgressMax;

ProgressBar1.Position:= Progress;

15. Проверить работу приложения.

16. Модернизировать приложение для реализации следующих функций:

· при изменении размера формы компоненты StatusBar и ProgressBar должны всегда отображаться на экране.

· кнопки Назад и Вперед после загрузки приложения должны быть недоступны. Кнопка Назад получает доступ только после выбора пользователем гиперссылки в окне браузера. Кнопка Вперед получает доступ после щелчка по кнопке Назад

 




Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: