Главная    Почта    Новости    Каталог    Одноклассники    Погода    Работа    Игры     Рефераты     Карты
  
по Казнету new!
по каталогу
в рефератах

Из опыта создания универсальных тестовых редакторов

 с
полями, поскольку прямой доступ  к  полям  нежелателен.  Объект  объявляется
следующим образом:
   Объект.
   Type <имя объекта>=object
    <поля данных>
    <заголовки методов>
   End;
   После объявления объекта к  нему  пишутся  процедуры  (методы).  Название
процедуры состоит из двух частей: имени объекта и имени процедуры:
<Имя объекта>.<Имя процедуры>
 
                            Объектная программа.
   Объектная программа- это последняя важная стадия разработки программы:  в
нее  внедряется  панель  управления,  что  значительно  облегчает  диалог  с
системой  и  делает  функции  программы  более  доступными.  Как  видно   из
предыдущей  главы,  функции  программы  в  структурном  виде   находятся   в
операторе варианта case, а выбор функции происходит нажатием клавиши.
   Создавая  объектную  программу,  я  лишь  перенес  функции  из  оператора
варианта в процедуры объекта и связал их между собой.
   Новый объект-  панель  управления  под  именем  panel  имеет  одно  поле-
координату   синего   прямоугольника,   который   перемещается   по   панели
управления. На самом деле это окно синего цвета, а изменение цвета букв  при
перемещении создается засчет точного соответствия текста в окне и текста  на
панели  управления.  Панель  имеет  процедуры   перемещения   прямоугольника
выбора, которые уменьшают и увеличивают  его  координату  в  соответствии  с
нажатыми клавишами. А также  есть  процедура  выбора,  при  нажатии  клавиши
Enter управление передается ей. Она в свою очередь определяет по  координате
окна какую функцию необходимо запустить в данный момент.
   Этапы разработки объекта Панель Управления:
1. Определение ключевого поля перемещения окна
2. Определение процедур работы с окном
3. Определение пропорций окна панели управления
4. Рисование панели управления
5. Написание процедур работы с окном выбора
6. Установка связей между функциями и объектом
7. Отладка объекта
                              Программный код.
Program redactor;
uses crt,printer,dos;
type panel=object  {объявление объекта}
     x:integer; {поле объекта}
     Procedure left(b:char); {описание процедуры сдвига влево окна выбора}
     Procedure right(b:char); { описание процедуры сдвига вправо окна
выбора }
     Procedure choose; { описание процедуры выбора функции }
     End;
  Var a,f,f1,a2:string; {описание всех программных переменных}
      b,k:char;
      c,u,y,a1,b1:text;
      d,e,i,j,p,z,z1,z2:integer;
      c1:boolean;
      g:panel;
      g1,g2,g3,g4,h:word;
  Procedure panel.left; {процедура сдвига влево окна выбора}
    Begin
    Window(x,22,x+9,22); {закрашивание следующего окна}
    TextBackGround(green);
    clrscr;
Закрашивание следующего окна- важная функция. Она закрашивает то синее
окно, которое было выбрано перед обращением к процедуре.
    Window(10,22,69,22); {основное окно панели управления}
    TextBackGround(green);
    clrscr;
    TextColor(brown); {установка цвета текста}
    Write('Новый     Открыть   Править   Результат Печать    Выход');
{нанесение надписи на панель
 
 
управления}
    If x>=20 Then x:=x-10; {проверка соответствия окна выбора границам
панели управления}
Этот оператор производит сравнение  координат  окна  выбора  с  координатами
начала панели управления. Если  окно  выбора  “выехало”  за  границы  панели
управления, то изменений координат не производится, окно выбора остается  на
своем месте.
    Window(x,22,x+9,22); {рисование окна выбора}
    TextBackGround(blue);
    clrscr;
    case x of  {выбор надписи на окне выбора}
Данное ветвление распознает по координате окна выбора какое слово следует в
него вписать.
    10:Begin
       TextColor(green);
       Write('Новый');
       End;
    20:Begin
       TextColor(green);
       Write('Открыть');
       End;
    30:Begin
       TextColor(green);
       Write('Править');
       End;
    40:Begin
       TextColor(green);
       Write('Результат');
       End;
    50:Begin
       TextColor(green);
       Write('Печать');
       End;
    60:Begin
       TextColor(green);
       Write('Выход');
       End;
    End;
    End;
  Procedure panel.right; {процедура сдвига окна выбора вправо}
    Begin
    Window(x,22,x+9,22); {закрашивание предыдущего окна}
    TextBackGround(green);
    clrscr;
    Window(10,22,69,22); {рисование окна панели управления}
    TextBackGround(green);
    clrscr;
    TextColor(brown); {изменение цвета текста}
    Write('Новый     Открыть   Править   Результат Печать    Выход');
{нанесение текста на панель управления}
Вы, конечно, заметили, что операторы предыдущей и этой процедуры
повторяются, поэтому их можно вынести в отдельную процедуру и запускать ее
для обновления окна панели управления.
    If x<=50 Then x:=x+10; {сравнение координат окна выбора с координатами
конца окна панели
 
 
управления}
    Window(x,22,x+9,22); {рисование окна выбора}
    TextBackGround(blue);
    clrscr;
    case x of  {нанесение соответствующего текста на окно выбора}
    10:Begin
       TextColor(green);
       Write('Новый');
       End;
    20:Begin
       TextColor(green);
       Write('Открыть');
       End;
    30:Begin
       TextColor(green);
       Write('Править');
       End;
Пред.678910След.
скачать работу

Из опыта создания универсальных тестовых редакторов

 

Отправка СМС бесплатно

На правах рекламы


ZERO.kz
 
Модератор сайта RESURS.KZ