|
Программирование >> Автоматически обновляемые приложения
206 Глава 6 public class MyControl: Control { . . . . . . Обратите внимание на три вещи. Первый параметр этого варианта конструктора класса TooiboxBitmapAttribute принимает объект Туре, который нужен только для того, чтобы определить сборку, в которой находится требуемый ресурс. Следовательно, это может быть любой тип, определенный в сборке проекта. Второй параметр конструктора чувствителен к регистру. Если файл значка находится в каталоге, отличном от каталога проекта (например, во вложенной папке) и этот файл был добавлен в проект через меню Open Link File (то есть без копирования в каталог проекта), то при указании имени изображения во втором параметре конструктора нужно добавить к названию файла имя папки через точку (например, images .One. ico ). Создание собственного элемента управления SmoothProgressBar в заключение мы приведем пример создания собственного элемента управления SmoothProgressBar, который будет ЯВЛЯТЬСЯ реализацией индикатора прогресса с собственным стилем, отличающимся от стандартного индикатора прогресса ProgressBar, который ВХОДИТ В состав .NET Framework. Данный пример основан на статье How to create а smooth progress bar in Visual C# 2005 or in Visual C# .NET из Базы Знаний Microsoft, которую вы можете найти по адресу http: support.microsoft.com/kb/323116/. В ранних версиях элемента управления ProgressBar Существовало два вида индикатора прогресса. Если у вас установлен пакет Visual Basic 6.0, то вы можете увидеть эти два различных стиля работы элементы. Запустите Visual Basic 6.0, выберите в меню Project Components... и в диалоговом окне Components выберите пункт Microsoft Windows Common Controls 6.0 (SP6), который добавит в проект группу элементов ActiveX, в число которых входит и ProgressBar (рис. 6.12). Далее на панели инструментов найдите элемент ProgressBar и добавьте его на форму. В окне свойств у индикатора прогресса вы увидите свойство Scrolling, состоящее из двух значений- ccscroiiingstandart (Стандартный) и ccScrollingSmooth (ПлавНЫЙ). Ccntrols Designers j Insertabfe Objects \ : Microsoft Visio Viewer 12.0 Type Ubrary Microsoft Voice Commands .Microsoft Voice Dictation Microsoft Voice Text Microsoft WindovrfS Common Controls 5.0 (SP2 >. Microsoft Windows Common Controls 6.0 (SP6 ... Microsoft Windows Common Controls-2 5,0 (S Microsoft Windows Common Controls-2 6.0 Microsoft VVindov/s Common Contro!s-3 6,0 Microsoft Winsock Control 6,0 I MS Video Control LO Type Libra-y . MSFlexGrid Wizard , Msie ActiveX Control module < i > L. firovvse... Г Selected Items Only -Active Setup Control Libra r>........---------------------------------- Location: C: \VWJDaVs/S\system32\asctrls.ooJ Отмена Рис. 6.12. Диалоговое окно Components в Visual Basic 6.0 чщес61 - Microsoft Visual Basic [deiig-Гогт1 (FOrmjJ Fife Edit General r ft- view Project Format Debug Run Query Diagram lools fidd-lns Windmv Нф П Ш CD -is X % % 1% i - Projectl (Projectl) I .- Forms I Q. Forml (Formll jProgressBari ProgressBar Alphabetic j Cetegorized
Scrolling Returns/sets a value that determines ivhether the control displays progress with a standard segmented Рис. 6.13. Два вида индикатора прогресса в Visual Basic 8 Зак 262 Создание элемента SmoothProgressBar Но вернемся к Visual С# 2008. Платформа .NET Framework поддерживает только стандартный стиль для индикатора прогресса. Наша цель - разработать свой элемент управления, который будет поддерживать следующие свойства: □ Minimum- СВОЙСТВО, позволяющее получать или устанавливать минимальное из допустимых значений индикатора прогресса. По умолчанию данное свойство будет установлено в 0. Использовать отрицательные значения в этом свойстве недопустимо; П Maximum- СВОЙСТВО, позволяющее получать или устанавливать максимальное из допустимых значений индикатора прогресса. По умолчанию значение данного свойства равно 100; П Value - это СВОЙСТВО получает или устанавливает текущее значение- индикатора прогресса. Значение этого свойства не должно выходить за диапазон, ограниченный свойствами Minimum и Maximum; П ProgressBarCoior- ЭТО СВОЙСТВО получает ИЛИ устанавливает цвет полоски индикатора прогресса. Опишем процесс создания собственного элемента управления SmoothProgressBar ПО шагам. 1. Запустите Microsoft Visual Studio 2008. 2. В меню File выберите команды New Project. 3. В диалоговом окне New Project выберите раздел Visual С# Windows и в списке шаблонов выберите Windows Control Library. 4. В поле Name введите новое имя SmoothProgressBar И нажмите кнопку ОК. 5. В окне Project Explorer замените имя по умолчанию для модуля класса с UserControl 1.CS н SmootliProgressBar.cs. Первая часть приготовлений к созданию индикатора прогресса закончена. Теперь приступим к написанию кода для разрабатываемого элемента. Откройте редактор кода для файла SmootliProgressBar.cs и вставьте код, приведенный в листинге 6.74. Плавный стиль заполняет индикатор прогресса сплошной цветной полосой, а стандартный стиль имеет вид маленьких блоков, состоящих из прямоугольников (рис. 6.13).
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0.002
При копировании материалов приветствуются ссылки. |