MaterStudiorum.ru - домашняя страничка студента.
Минимум рекламы - максимум информации.


Авиация и космонавтика
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Банковское дело
Безопасность жизнедеятельности
Биографии
Биология
Биология и химия
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Издательское дело и полиграфия
Инвестиции
Иностранный язык
Информатика
Информатика, программирование
Исторические личности
История
История техники
Кибернетика
Коммуникации и связь
Компьютерные науки
Косметология
Краткое содержание произведений
Криминалистика
Криминология
Криптология
Кулинария
Культура и искусство
Культурология
Литература и русский язык
Литература(зарубежная)
Логика
Логистика
Маркетинг
Математика
Медицина, здоровье
Медицинские науки
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Москвоведение
Музыка
Муниципальное право
Налоги, налогообложение
Наука и техника
Начертательная геометрия
Новейшая история, политология
Оккультизм и уфология
Остальные рефераты
Педагогика
Полиграфия
Политология
Право
Право, юриспруденция
Предпринимательство
Промышленность, производство
Психология
Психология, педагогика
Радиоэлектроника
Разное
Реклама
Религия и мифология
Риторика
Сексология
Социология
Статистика
Страхование
Строительные науки
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Управленческие науки
Физика
Физкультура и спорт
Философия
Финансовые науки
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
Экология
Экономика
Экономико-математическое моделирование
Экономическая география
Экономическая теория
Эргономика
Этика
Юриспруденция
Языковедение
Языкознание, филология
    Начало -> Психология, педагогика -> Созание компоненты

Название:Созание компоненты
Просмотров:79
Раздел:Психология, педагогика
Ссылка:none(0 KB)
Описание:Вы часто используете в своих программах одни и те же куски кода для обработки стандартных компонент? Если да, то вам стоит прочитать эту статью. Здесь мы рассмотрим основы создания компоненты, и в качестве примера создадим одну простую компоненту.

Часть полного текста документа:

Созание компоненты
    Вы часто используете в своих программах одни и те же куски кода для обработки стандартных компонент? Если да, то вам стоит прочитать эту статью. Здесь мы рассмотрим основы создания компоненты, и в качестве примера создадим одну простую компоненту.
    Для начала нужно определиться, какую компоненту будем создавть. Для примера сделаем компоненту на базе стандартной компоненты дельфи TEdit. Эта компонента будет представлять собой поле ввода, в которое можно будет ввести только число с возможностью ввода одного знака "минус" в начале числа. Пусть компонента будет называться TNEdit. Создайте отдельную папку для компоненты.
    Для начала создания новой компоненты запустите дельфи и выбирите из меню Component команду New Component. В появившемся окне в поле Ancestor Type впишите TEdit [StdCtrls] (или можно выбрать из ниспадающего списка). В поле Class Name нужно вписать имя класса компоненты - TNEdit. Из списка Palette Page выберите существущюю вкладку палитры компонент, либо введите свое название вкладки (она будет создана), где будет размещаться наша компонента. В поле Unit file name введите путь до папки, где будут размещаться модуль компоненты. Все. Жмите Ok (не Install!!!) и к текущему проекту добавится сгенерированная дельфи заготовка модуля компоненты.
    Редактируем шаблон
    Тут я просто приведу текст шаблона, к какому виду его нужно привести. А в конце кода опишу все изменения.
    unit NEdit1;
    interface
    uses
    Windows, Messages, SysUtils, Classes, Controls, StdCtrls;
    type
    TNEdit1 = class(TEdit)
    private
    EditNumber : single;
    function getNum : single;
    procedure setNum(val : single);
    protected
    procedure KeyPress(var Key : Char); override;
    public
    { Public declarations }
    published
    Constructor Create(AOwner : TComponent); override;
    property Num : single
    read getNum
    write setNum;
    end;
    procedure Register;
    implementation
    procedure Register;
    begin
    RegisterComponents('Samples', [TNEdit1]);
    end;
    constructor TNEdit1.Create(AOwner : TComponent);
    begin
    inherited Create(AOwner);
    end;
    function TNEdit1.getNum : Single;
    begin
    try
    Result := StrToFloat(text);
    except begin
    Result := 0;
    text := '';
    end;
    end;
    end;
    procedure TNEdit1.setNum(val: Single);
    begin
    EditNumber:=val;
    text:=FloatToStr(val);
    end;
    procedure TNEdit1.KeyPress(var key:char);
    begin
    case key of
    '0'..'9', #13, #8: ;
    '-' : if Length(text)0 then key := #0;
    else
    if not ((key=DecimalSeparator)and(pos(DecimalSeparator,text)=0)) then Key:=#0;
    end;
    inherited KeyPress(key);
    end;
    end.
    Компонента реагирует на нажатие пользователем клавиши в поле ввода процедурой TNEdit.KeyPress. Eю мы заменили соответствующюю процедуру базового класса. В качестве параметра процедуре передается нажатая клавиша (вернее её код). Перед выводом в рабочую область числа мы проверяем это число. Если оно не содержит цифру, код клавиш Enter и Backspace, или вводится минус в середине числа, либо вводится второй разделитель(.), то соответствующему коду клавиши присваевается #0 и символ не выводится в рабочюю область. ............






Похожие работы:

Название:Фразеосемантическое поле с компонентом соматизм в английском и русском языках (сопоставительный анализ)
Просмотров:378
Описание: Министерство образования и науки Российской Федерации Государственное образовательное учреждение высшего профессионального образования Курский государственный университет Факультет иностранных языков

Название:Розробка та реалізація компонентів системного програмного забезпечення
Просмотров:381
Описание: КУРСОВА РОБОТА на тему:   «Розробка та реалізація компонентів системного програмного забезпечення» Львів 2011 Анотація В курсовому проекті розроб

Название:Фразеологічні одиниці з компонентом "вода" в аспекті англо-українського перекладу
Просмотров:367
Описание: Тема Фразеологічні одиниці з компонентом «вода» в аспекті англо-українського перекладу Вступ Останніми десятиріччями фразеологія привертає до себе увагу дослідників рі

Название:Пассивные компоненты ВОЛС
Просмотров:396
Описание: Пассивные компоненты ВОЛС К пассивным компонентам ВОЛС относятся оптические соединители и разветвители, которые служат для объединения или разъединения оптических сигналов. Различают чувствительные (се

Название:Компоненты, обладающие свойствами понижать горючесть полимерных материалов
Просмотров:283
Описание: РЕФЕРАТ На тему: «Компоненты, обладающие свойствами понижать горючесть полимерных материалов» Омск-2011 Содержание Введение 1. Горение полимеров

 
     

Вечно с вами © MaterStudiorum.ru