|
Программирование >> Разработка пользовательского интерфейса
ENDDEFINE * Описываем класс объекта Custom DEFINE CLASS Pass Word AS Custom Height = 17 Width = 100 Name = Password * Добавляем для создаваемого объекта свои свойства cUnencrypted = cEncrypted = * Процедура выполнения шифрования пароля PROCEDURE Encrypt It PARAMETERS cPassword cEncrypted password = * Запускаем цикл по количеству введенных в пароле * символов FOR i = 1 TO LEN(cPassword) cLetter = SUBSTR(cPassword, i, 1) cEncrypted password = cEncrypted password + ; CHR((ASC(cLetter)*2)+5) && Заменяем && введенный символ NEXT i THIS.cEncrypted = cEncrypted password ENDPROC * Процедура расшифровки пароля PROCEDURE Decrypt It PARAMETERS cPassword cUnencrypted password = FOR i = 1 TO LEN(cPassword) cLetter = SUBSTR(cPassword, i, 1) cUnencrypted password = cUnencrypted password + ; CHR((ASC(cLetter)-5)/2) NEXT i THIS.cUnencrypted = cUnencrypted password ENDPROC ENDDEFINE В Visual Basic вместо одного универсального невизуального объекта используется достаточно большое число специализированных невизуальных объектов. Опишем те, которые наиболее часто используются при построении пользовательского приложения. Объект App определяет или задает такие параметры, как заголовок приложения, путь к исполняемому файлу и его имя, имя файла контекстной справки и т. д. Этот объект имеет только свойства и не имеет ни событий, ни методов. Объект ClassModule содержит свойства, которые управляют поведением класса так же, как программа может описывать свойства и методы класса. В приложении вы можете использовать этот объект как контейнер для программного кода, который описывает свойства и методы созданного вами класса. Объект ClassModule похож по своему поведению на форму, но без визуального интерфейса. Объект Clipboard обеспечивает доступ к системному буферу обмена. Этот объект используется для работы с текстом и графикой, содержащейся в буфере обмена, и с его помощью можно обеспечить пользователю возможность копировать, вырезать и вставлять данные в приложении. Объект Collection - коллекция - представляет собой набор объектов, к которому можно обращаться как к единому целому. Обычно в колекцию помещают группу однотипных объектов (членов коллекции), а затем обращаются к ним по номеру, который объект занимает в коллекции. Но в принципе, в коллекции могут быть объединены и объекты разного типа. Размещение объектов в коллекции позволяет выполнять необходимые действия одновременно над всеми объектами, обращаясь только к одному объекту Collection. Объект создается точно так же, как и другие объекты, например:/p> Dim oCollect1 As New Collection Объекты в коллекцию могут быть добавлены с помощью метода Add и исключены из нее с помощью метода Remove. Объекты OLE Элементы управления OLE - этот дополнительный инструмент, который позволяет расширить функциональность разрабатываемых прикладных программ. Возможность использования элементов управления OLE в приложении появилась за счет поддержки технологии OLE 2.0 (Object Linking and Embending) - стандартного интерфейса, разработанного Microsoft, для одновременного использования приложениями объектов в ОС Windows. Что дает эта технология разработчику прикладного программного обеспечения? При разработке прикладной программы мы можем использовать объекты из других приложений. Например, разместить в форме текстовый документ Word for Windows. Текстовый документ станет OLE-объектом. Тогда текстовый процессор примет статус сервера OLE, а прикладная программа - клиента OLE. При обращении к объекту OLE все необходимые функции предоставляет сервер OLE. Он продолжает работать до тех пор, пока в других приложениях останется хотя бы один его объект. В Windows 95 появился новый тип серверов OLE - внутренний сервер OLE. Он предоставляет запрашивающим приложениям тот же интерфейс, что и внешний сервер OLE, однако отличается от него намного более высоким быстродействием, так как не требует отдельного пространства памяти для второго приложения. Другая возможность технологии OLE 2.0 заключается в использовании настраиваемых элементов управления ActiveX (OLE Custom Controls - OCX). Элементы управления ActiveX - это стандартный формат объектов OLE, допустимый для приложений, написанных и на других языках программирования. Их использование позволяет обеспечить пользовательскому приложению практически любую функциональность, реализовать которую встроенными средствами было бы невозможно или затруднительно. Элемент управления OLE Bound создает встроенный OLE-объект, который связан с полем типа General таблицы Visual FoxPro. Встроенный OLE-объект не имеет собственного набора событий. Чаще всего в качестве встроенного OLE-объекта используется изображение, звук или видеоролик. Элемент управления OLE Container позволяет включить элемент управления OLE в пользовательское приложение Visual FoxPro. Элемент управления OLE обычно может быть использован в виде файла с расширением OCX. Кроме того, в виде подобного элемента управления может использоваться файл документа Word for Windows или таблица Excel. В Visual Basic функциональность обоих этих элементов управления обеспечивается одним объектом OLE. Для работы с OLE-объектами можно использовать следующие свойства. Control.AutoActivate [ = nValue] Определяет, как могут быть активизированы элементы управления OLE. Если параметр nValue равен 0, то элемент управления не будет автоматически активизирован при выборе пользователем. Вы можете активизировать элемент управления программно, используя метод DoVerb. Если nValue = 1, то прикладная программа, являющаяся для объекта сервером, будет активизирована после выбора объекта пользователем. Если nValue = 2 (по умолчанию), то объект OLE будет активизирован двойным щелчком мыши или нажатием клавиши Enter на этом объекте, если объект выбран. Если nValue = 2, то объект OLE будет активизирован двойным щелчком мыши на элементе управления или выбором этого объекта (автоматическая активизация). Control.HostName [ = cExpression] Для некоторых приложений позволяет задать имя, которое будет использоваться в качестве заголовка окна при редактировании OLE-объекта. Пользователи профессиональной версии Visual FoxPro получают набор дополнительных элементов управления ActiveX вместе с пакетом. Набор состоит из четырех файлов -MSCOMM32.OCX, MSMAPI32.OCX, MSOUTL32.OCX и PICCLIP32.OCX, - которые при инсталяции Visual FoxPro записываются в директорий SYSTEM операционной системы Windows. Эти элементы управления наряду с другими входят и в профессиональную версию Visual Basic. Что же таится в этих файлах? MSCOMM32.OCX представляет элементы управления для передачи данных в приложении по последовательному интерфейсу (Communications control). Они обеспечивают следующие пути для управления передачей данных: Событийно управляемая передача данных позволяет с помощью события OnComm отслеживать начало передачи данных на компьютер (Carrier Detect) и необходимость передачи данных с компьютера (Request To Send). Событие OnComm также отслеживает ошибки соединения. Определять необходимость передачи данных можно и с помощью проверки значения свойства CommEvent после выполнения программой определенных действий, например, после получения сигнала OK от модема. Для каждого последовательного порта, который используется для передачи данных, необходимо использовать отдельный элемент управления. MSMAPI32.OCX - представляет набор элементов для создания в пользовательском приложении возможности передачи почтовых сообщений (Microsoft MAPI Controls). В файле содержатся два элемента управления: Элемент управления сеансом связи (MAPI Session Control) позволяет установить связь с требуемым получателем почтового сообщения. Элемент управления сообщениями (MAPI Messages Control) позволяет пользователю выполнять различные почтовые функции. Эти элементы управления невидимы во время работы программы, к тому же они не имеют собственных событий. Для их использования необходимо применять соответствующие методы. MSOUTL32.OCX - представляет элемент управления для создания иерархического списка (Outline Control), в котором каждый пункт может иметь подчиненный пункт, выводимый с отступом. Пользователь может сворачивать список, делая невидимыми подчиненные пункты, или, наоборот, раскрывать иерархию интересующих его пунктов. Такой тип списка используется в Windows 95 для вывода списка файлов и директорий, а в Visual FoxPro для отображения элементов, входящих в проект. PICCLP32.OCX - представляет элемент управления для вывода растровых изображений (Picture Clip Controls), который позволяет выбрать область в исходном изображении и затем вывести ее в форме. Этот элемент управления не видим в процессе работы программы. Он позволяет заменить множество используемых в программе файлов BMP или ICO одним файлом, содержащим все необходимые изображения. С помощью элемента управления для вывода изображений можно выбрать нужную область и вывести требуемую иконку или изображение, например, для каждой кнопки на панели инструментов. Это позволяет значительно эффективнее использовать память компьютера. При установке СУБД Access 7.0 вы получаете в свое распоряжение один дополнительный элемент управления - календарь (Calendar Control). Этот элемент управления находится в файле MSACAL70.OCX и может быть встроен в форму приложения для быстрого поиска даты. Календарь также поддерживает события, с помощью которых ваше приложение может автоматически выполнять какие-либо действия, связанные с той или иной датой. Значительное количество дополнительных элементов управления поставляется вместе с Visual Basic, особенно с профессиональной версией этого средства разработки. Дадим им краткую характеристику. В файле COMCTL32.OCX содержатся несколько элементов управления Windows 95. Элемент управления ListView позволяет отображать списки, используя один из четырех способов: в виде значков (иконок); используя уменьшенные версии значков; в виде списка; в виде таблицы с дополнительным текстом для пояснения к каждому пункту. Вы можете выстраивать пункты в колонках, используя заголовки и сочетая значки с текстом, а также устанавливать сортировку пунктов. Элемент управления ImageList предназначен для хранения коллекции объектов ListImage, каждый из которых может быть идентифицирован по его номеру в списке или по ключу. Элемент управления ImageList не предназначен для самостоятельного использования, а может быть включен в любой другой элемент управления как хранилище изображений. Элемент управления TreeView позволяет отображать иерархические списки специальных объектов Node, каждый из которых содержит метку и, возможно, изображение. Этот элемент управления можно эффектно использовать для отображения содержания каких-либо документов, списков файлов и папок и т. д. По своему назначению он аналогичен объекту Outline Control, но предоставляет более широкие возможности для программного управления сворачиванием и раскрытием иерархии пунктов, перемещением и выбором пунктов в списке, в том числе с использованием поиска первых символов по нажатии клавиш. Список выводится в окне, которое имеет полосы прокрутки. Элемент управления TreeView использует элемент управления ImageList для хранения значков, которые используются при выводе каждого объекта Node (пункта в
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |