Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Новости ИТ Программы Книги Games   Обои   Экспорт RSS E-Books
 
Поиск по сайту

TOP-10 программ
Symantec Norton Ghost 9.0
Partition Magic 8.0.2 Pro
Xilisoft 3GP Video Converter v3.1.7.0616b
Norton AntiVirus 2005
Xilisoft 3GP Video Converter v2.1.52.831b
Антивирус Касперского Personal 5.0.303 beta 2
RAR Password Cracker 4.12
ABBYY PDF Transformer v1.00.820
MP3 To Ringtone Gold v3.02
Mobtime Cell Phone Manager v5.3.1
 
Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
 
 

   Программирование -> C++ Builder -> Использование ActiveX в приложениях C++Builder


Создание элементов управления ActiveX с помощью C++ Builder
(на примере Shockwave Flash)

Источник: www.proglib.ru

В этой статье вы познакомитесь с элементами управления ActiveX (ActiveX controls) и научитесь использовать их в своих приложениях. Статья ориентирована на тех, кто выбрал в качестве среды разработки C++Builder, хотя я не думаю, что будет сложно переделать приведенные примеры на Delphi (тем более, что основная часть работы будет проделана IDE, и, вы не поверите, полностью рабочее приложение будет состоять всего из двух !!! строчек кода). Итак, если вы готовы, приступим.

Что нам нужно?
1. Я использовал C++Builder версии 3.0, но приведенная методика будет работать и в более старших версиях.
2. Установленный Macromedia Flash (либо Flash или Shockwave Player). Я работал и c 4-й, и c 5-й версиями.
3. Файл с откомпилированным (экспортированным) роликом Macromedia Flash. Эти файлы имеют расширение swf.

Задача: Мы напишем проигрыватель роликов swf. Вы можете использовать эти ролики для каких-то мультимедийных вставок в своих приложениях, для создания анимированных эффектов и т.п.

Первое, что нам нужно сделать - это импортировать элемент управления ActiveX. Элементы ActiveX, доступные для импорта, можно просмотреть, открыв меню Component и щелкнув по пункту Import ActiveX Contorl... Откроется диалог, подобный нижеприведенному (список элементов управления может отличаться):

Если у вас установлен Macromedia Flash, в списке должен присутствовать пункт Shockwave Flash (Version 1.0) (может быть и другая версия и вообще, тут многое зависит от версии Windows и Macromedia Flash). Выделите его, при этом в поле Class name должно появиться что-то вроде TShockwaveFlashProxy (или просто TShockwaveFlash). В поле Unit dir name будет показан путь, где будут созданы файлы импортированного элемента управления, которые нам понадобятся; измените этот путь, если он вас не устраивает. Я буду предполагать, что это поле осталось без изменения и все файлы сгенерируются в каталоге $(BCB)\LIB. Можно также изменить будущее расположение иконки компоненты в палитре компонент, изменив значение Palette page, но особых причин этому я не вижу. Нажмите кнопку Install... внизу диалога. Теперь нам нужно выбрать, в какой файл проекта должен быть помещен импортируемый нами элемент управления. Можно выбрать уже существующий файл проекта (обычно предлагается dclusrxx.bpk, xx-номер версии C++Builder), либо создать новый проект, что мы и сделаем, перейдя на закладку Into new package и выбрав путь и имя файла проекта (в общем-то здесь все не принципиально). После нажатия на кнопку OK будут сгенерированы все файлы, необходимые для импорта выбранного нами элемента управления ActiveX и автоматически будет предложено откомпилировать (или перекомпилировать) созданный проект. Нажимаем Yes и после нескольких секунд у нас в закладке ActiveX палитры компонент красуется значок импортированного нами элемента управления TShockwaveFlashProxy:

Теперь самое время создать наш проект. Поместите на основную форму проекта две кнопки - btnPlay и btnStop и созданную нами компоненту TShockwaveFlashProxy1. Установите ее высоту и ширину, в поле Movie нужно забить полный путь и имя файла проигрываемого ролика (все это, конечно, можно делать и во время выполнения программы). Свойство Loop контролирует цикличность ролика, Menu управляет отображением меню, Quality регулирует качество изображения и т.д. У вас должно получиться что-то типа этого:

Осталось написать код обработки нажатия кнопок. Вот он:

void __fastcall TForm1::btnPlayClick(TObject *Sender)
{ 
   ShockwaveFlashProxy1 -> Play();
}
//-----------------------------------------------------------------
void __fastcall TForm1::btnStopClick(TObject *Sender)
{
   ShockwaveFlashProxy1 -> Stop();
}

Как видите, я вас не обманул - мы написали полноценный проигрыватель роликов Macromedia Flash в две строки.

Если вам интересно, какие еще методы и свойства предлагает элемент упарвления TShockwaveFlashProxy, вы можете изучить сгенерированные файлы .cpp и .h либо библиотеку типов swflash.ocx, лежащую в каталоге $(WINDOWS_SYSTEM)\Macromed\Flash\ (для этого выберите пункт меню File\Open..., в выпадающем списке типов файлов выберите Type Library (*.tlb,*.dll,*.ocx,*.exe,*.olb) и перейдите в указанную папку).

Заключение

Вы, наверное, заметили, что в списке предлагаемых к импорту элементов управления ActiveX есть множество полезных вещей. Так, например, вы легко можете импортировать Microsoft Internet Controls (в версии 5 C++Builder он уже есть в палитре компонент) и написать свой веб-браузер. После установки продуктов Adobe Acrobat в этом списке появляется элемент TSVGCtlProxy, позволяющий просматривать графику в активно продвигаемом Adobe формате SVG. Тут же есть и DirectAnimation Library, и Windows Media Player, и еще множество других элементов управления: в разных версиях Windows их огромное множество. Так что экспериментируйте.

Удачного программирования!



 
Популярные книги

Технология программирования на C++. Начальный курс

Подробнее

Photoshop CS2. Настоящий самоучитель

Подробнее

SQL для "чайников", 5-е издание

Подробнее

 

 
Новости ИТ
01.12.2008  Buffalo выпустил миниатюрные USB-накопители
01.12.2008  VENTO TA-U1 - стильный корпус представлен Asus
01.12.2008  Fujitsu-Siemens выпускает в продажу внешний ускоритель для ноутбуков
01.12.2008  Оригинальные чехлы для ноутбуков от Choiix
01.12.2008  Опубликован код драйвера для беспроводных карт Atheros
01.12.2008  Лучший блог 2008
01.12.2008  Linux запустили на Apple iPhone
01.12.2008  LG KC780
01.12.2008  MSI дополнит линейку Wind-нетбуков двумя моделями
01.12.2008  Nikon D3X - 24,5 млн пикселей для профессионалов
01.12.2008  Киловаттник HIPER M1000 с КПД выше 85%
01.12.2008  AMD впервые снизила цены линейки Radeon HD 4800
01.12.2008  Чистильщики: Wise Registry Cleaner v.3.8.2
01.12.2008  Антивирусы: RemoveIT Pro v4 SE (30.11.2008)
01.12.2008  Корпус ASUS Vento TA-U1 можно поставить вместо новогодней ёлки
01.12.2008  Диагностика: PC Wizard 2008 v.1.871
01.12.2008  Диагностика: NextSensor v.2.7.6.0 Build 1130
01.12.2008  Тестовые приложения: PassMark BurnInTest v.6.0 Build 1000 Beta 15
01.12.2008  Неофициальные драйверы для модемов Motorola
01.12.2008  Драйверы и утилиты для сетевых хранилищ D-Link
 
Полезно

 
Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.
 
Rambler's Top100