CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2003 ГОД

Сизам, откройся!

Роман (Romeo) РАДЧЕНКО romeomail@ukrpost.net

Третий час ночи, в окно с улицы тускло светит одинокий фонарь, оставляя блик на вашем мониторе. А Вы, надежно устроившись на любимом стуле, приросшем к полу, общаетесь с любимым домашним животным — ПК, временами вяло волоча мышь по коврику… Но внезапно возникает необходимость вставить диск в Ваш CD. Но ведь это такое сложное физическое упражнение (тем более в три часа ночи :-))… Что же делать?!

Ну что ж, можно попробовать решить проблему хотя бы отчасти — заставить CD-ROM открыться (а потом, соответственно, и закрыться) с помощью мыши. Нет, для этого нам не понадобится привязывать шнурок к мышке и к лотку CD-ROM’а, достаточно будет написать маленькую чудесную программку. В этот момент заядлые интернетчики наверняка скривились или ухмыльнулись — мол, подобную софтину можно без особого труда скачать! Да-да, уважаемые инетовцы, вы абсолютно правы, но какое счастье написать эдакую прогу самому, а впоследствии все глюки и ошибки программы сваливать не на кого-то, а на себя (то есть, на меня :-)). Если я вас хоть немного убедил, то идем дальше.

Предлагаю писать на Borland Delphi 5, так как это, пожалуй, самая распространенная и понятная среда визуальной разработки приложений (это всего лишь мое скромное мнение :-)). Отмечу, что если вам ближе C++, то вы без особого труда можете переписать нашу программу в Borland Builder 5, изменив некоторые нюансы. Сразу скажу, что нам понадобится библиотека компонентов RX-Lib, которая по праву признана одной из лучших; она вам может пригодиться в дальнейшем еще неоднократно. Скачать ее можно здесь: http://www.rxlib.ru/arh/Comp/rxlib275.zip(1.2 Мб). Все вопросы по установке библиотеки вы найдете в текстовых файлах скачанного пакета (здесь проблем возникнуть не должно :-)).

И вот вы открыли Delphi. У вас перед глазами — новая, еще невинная форма (Form1), на которую необходимо положить следующие компоненты (Рис. 1) из Палитры:

PopupMenu на вкладке Standard;

ImageList на вкладке Win32;

RxTrayIcon на вкладке RX Tools (этот компонент нам и нужен был из RX-Lib).

Теперь необходимо установить некоторые свойства наших компонентов (они располагаются на вкладке Properties в окне Object Inspector). Двойным щелчком по PopupMenu1 открываем редактор менюшек, где добавляем два новых пункта —Exit и CD (Рис. 2).

Рис. 1. Form1   Рис. 2. PopupMenu1

Сейчас нам понадобится две иконки размером 1616, которые будут сменяться в трее в зависимости от состояния CD (открыт/закрыт). Вы можете взять стандартные иконки, устанавливаемые вместе с Delphi, или порыться в закромах своего HDD (в этом вам может значительно помочь IconToy, как раз для этого предназначенный), или же нарисовать самому (страшное занятие — не рекомендую :-)). Если иконки обнаружились, тогда кликаем два раза по ImageList1 и появившемся окне добавляем (Add) наши иконки (Рис. 3). Кстати, лучше вначале поставить иконку закрытого CD, а потом уже открытого, чтобы не изменять текст программы.

Рис. 3. ImageList1

И наконец, меняем свойства компонента RxTrayIcon1: В свойстве PopupMenu пишем PopupMenu1, а в свойстве Hint — всплывающую подсказку, которая будет ужасать пользователя, если тот задержит мышь над нашей прогой :-).

Остались детали — написать текст программы :-). Далее я буду приводить тексты модулей, а измененные участки — комментировать.

Жмем Ctrl+F12 и выбираем главный модуль проекта, куда втискиваем следующие три строки (как я уже сказал, они отмечены комментариями):

Настоятельно рекомендую на этой стадии не запускать наше приложение, так как оно будет напоминать приведение — его нигде не будет видно :-). Но если Вы любитель паро-нормальных явлений :-), тогда советую в окне Delphi нажать Ctrl+F2 — это поможет обнаружить невидимку.

Главный модуль изменен надлежащим образом, а теперь в окне редактора выбираем вкладку Unit1 и производим следующий апгрейт:

Как вы уже догадались, основная функция открытия и закрытия лотка — это API-функция mciSendString из модуля MMSystem, которая просит систему открыть первый по умолчанию аудиодиск. Так как аудиодиском может являться любой CD-привод, то она просто открывает или закрывает CD-ROM. Чтобы открывать не первый CD, а тот, который вы указали сами, необходимо строить свою процедуру, также использующую API-функции. Если вас заинтересовал этот вопрос, то советую скачать русский help по API-функциям, который лежит по адресу http://nikolayam.narod.ru/api_help.zip(290 Кб).

Процедуры, реагирующие на события (клик по иконке в трее и т.д.) мы уже написали, теперь было бы не лишним их связать между собой. Для этого возвращаемся к Object Inspector’у, открываем вкладку Events и в выпадающем списке выбираем объект, указывая событие:

 объект Рис. 4.Form1, событие OnCreate устанавливаем в FormCreate;

объект CD1, событие OnClick — в CD1Click;

объект Exit1, событие OnClick — в Exit1Click.

объект RxTrayIcon1, событие OnClick — в RxTrayIcon1Click.

Самое легкое позади :-), теперь закрываем глаза, нажимаем F9 и молимся. Если все прошло гладко, тогда можете не ругать меня, если же выскочила ошибка, то сначала проверьте текст :-). После запуска (надеюсь, он свершился) в трее появится иконка нашей, пардон, Вашей программы (Рис. 4), и если Вы кликнете по ней, то… «Сидюк, откройся!»

Готовый экзешник можно кинуть в автозагрузку. Вот мы и убили двух зайцев — создали сами программу и облегчили себе жизнь, хотя бы такой мелочью :-).

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov