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 ГОД

Вопрос, конечно, интерфейсный…

RATAN dhtmlostap@yandex.ru

Окончание, начало см. в МК № 33-34, 39 (256-257, 262).

О выпадающих меню

Как это стильно — надавил правую крысиную кнопку на окне, а оттуда выпадающее меню! В VB достичь этого совсем несложно. Выпадающее меню создается совершенно так же, как и обычное, с одним исключением — его свойству Visible присваивается значение False. После чего следует примерно такой код:

Его можно расшифровать так: «Если на форме отпущена правая кнопка мыши без клавиш Alt, Ctrl или Shift, то вывести выпадающее меню mnuPopUp в точке X, Y с выделенным по умолчанию меню mnuSettings».

О Web-интерфейсе

Нередко встречается и такая проблема — после знакомства с продуктом воображения какого-нибудь веб-дизайнера начинает ощущаться смутное, но горячее желание, чтобы и ваша VB-программа тоже имела такой интерактивный вид, чтоб в ней все переливалось от наведения указателя мауса, были гиперссылки etc. Для создания такого извращения (полезно при написании программ-оболочек для CD) можно использовать Microsoft Internet Controls > WebBrowser из окна Проект > Компоненты. Используя метод Navigate или Navigate2 в Form_Load применительно к вашему html-документу, а также события JavaScript onMouseOver и onMouseOut, можно добиться впечатляющего результата. Хорошо себя зарекомендовала связка из двух браузеров, один из которых занимает всю форму и изображает интерфейс программы (кнопки, изменяющиеся при наведении, красивые картинки etc), а другой представляет собой внутреннее окно, в котором происходит отображение сведений о диске. Можно использовать и один браузер, если поработать над фреймами. Одно требование — желательно неплохо знать JavaScript или... VBScript. Примечание: файл MS Internet Controls’ов shdocvw.dll позарез нужен для MS Internet Explorer, поэтому его можно не поставлять с программой. Но если вы записываете программу-оболочку на CD, и там хватает места, лучше подстраховаться: добавить и msvbvm60.dll, и shdocvw.dll, и все остальное…

О ShellAbout

Если вам по какой-то непонятной причине неохота разрабатывать About-форму для своей программы (никогда не пойму таких программистов, имхо, создавать и рассматривать такие формы — наслаждение), вы можете использовать ShellAbout — такую себе хорошую API-функцию. Если вы не знаете, что такое стандартное About-окно Windows, откройте Paint или даже Explorer и выберите меню Справка > О программе. Вот такая небольшая строчка:

вызвала такое вот стильное окошко, не лишенное изящества (см. Рис. 1). Для тех, кто не в курсе, что означает последний аргумент, сообщу: API-функции, когда им нужна картинка, запрашивают handle этой картинки. Передать таковой им вы сможете, разместив его на форме PictureBox с нужной вам картинкой, а потом вызвав от него Picture1.Picture.Handle. Пусть вас не удивляют две точки: Picture1.Picture — это объект, который, разумеется, имеет свой свойства и методы. Поэтому, исследуя этот новый control на предмет глюков и перспектив использования, не ленитесь нажимать еще одну точку — может обнаружиться что-то интересное! (Примечание: свойство Font тоже балуется подобными вещами.)

О формах Always-On-Top

Некоторые программы — вероятно, специально для того, чтобы подольше мозолить нам глаза — не только не сворачиваются в трей, но и вообще никуда и никогда не исчезают, постоянно оставаясь «впереди планеты всей». Такие наглые формы называются Always-On-Top. Представьте себе ваш no-move баннер, находящийся Always-On-Top посреди экрана и напоминающий юзеру о том, что совсем неплохо иметь пару-тройку ароматных стелек от китайской компании SamSebeSoon. Здорово, неправда ли? Для этого желательно иметь модуль с таким содержанием:

Используя функцию SetFormPosition c handle вашей формы в одном аргументе и True или False в другом, вы можете заставить форму мозолить или, наоборот, не мозолить (например, после регистрации за энную сумму) юзеру его рецепторную систему.

О звуках

Использовать медленный и тяжелый MediaPlayer-компонент, который к тому же придется поставлять с программой — не самый лучший выход. Одно из возможных решений проблемы — использовать для файлов .wav и .mid API-функции sndPlaySound. Напишите sndPlaySound FileName.wav, 1, и вы на пару с вашим юзером сможете вовсю наслаждаться третей симфонией Бетховена или пятым альбомом Rammstein. Но не забывайте поставлять этот самый FileName.wav со своей программой!

Оказывается, sndPlaySound потихоньку становится нелегальной API-функцией. Конечно, если вы желаете добиться совместимости вашей программы с прошедшими версиями Windows, лучше его использовать, но если вы помышляете о вечном или хотя бы долговечном — лучше использовать PlaySound с похожими аргументами.

О справке

Чтобы добавить справку в программу, нужно как минимум эту справку написать. Затем, с помощью «интуитивно понятного» HTML Help WorkShop, входящего в поставку VB6, перевести написанные html-файлы в файл .chm. Можно это сделать также и с помощью программы htm2chm, ранее описывавшейся на страницах всеми любимого МК. После выполнения всех вышеперечисленных и, заметим, довольно нудных действий добавляете в свою программу туда, куда надо что-нибудь типа Shell “hh “ & App.Path & “\help\help.chm” — и можете гордится тем, что у вас теперь все как в лучших домах Филадельфии и Европы.

(Продолжение следует)

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






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

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

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





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