Пример: Глобальная сеть INTERNET
Я ищу:
На главную  |  Добавить в избранное  

Главная/

Программирование, базы данных. /

Экспертная система

Документ 1 | Документ 2 | Документ 3 | Документ 4 | Документ 5 | Документ 6

←предыдущая  следующая→
1 2 

{$D+,L+}

uses drivers,objects,views,app,menus,main,calendar,dialogs,calc,puzzle;

 var pvisualstrm:pprotectedstream;

 procedure createstatusline;

  var r:trect;

      pstatus:pstatusline;

  begin

   r.a.x:=0;

   r.a.y:=24;

   r.b.x:=80;

   r.b.y:=25;

   pstatus:=new(pstatusline,init(r,

    newstatusdef(0,$ffff,

     newstatuskey('~F1~ Помощь',kbf1,cmhelp,

     newstatuskey('~F8~ Временный выход в DOS',kbf8,cmdos,

     newstatuskey('~F9~ Меню',kbf9,cmmenu,

     newstatuskey('~F10~ Выход',kbf10,cmexit,nil)))),nil)));

   visualres.put(pstatus,'Статус');

   dispose(pstatus,done)

  end;

 procedure createmenubar;

  var r:trect;

      pbar:pmenubar;

  begin

   r.a.x:=0;

   r.a.y:=0;

   r.b.x:=80;

   r.b.y:=1;

   pbar:=new(pmenubar,init(r,newmenu(

    newsubmenu('~С~истема',hcnocontext,newmenu(

     newitem('~П~ауза','F4',kbf4,cmpause,hcnocontext,

     newsubmenu('~О~болочки',hcnocontext,newmenu(

      newitem('~M~S-DOS','F8',kbf8,cmdos,hcnocontext,

      newitem('~W~indows 3.1','',0,cmwin,hcnocontext,

      newitem('~N~orton Commander 5.0','',0,cmnc,hcnocontext,nil)))),

     newsubmenu('~А~РМ командира',hcnocontext,newmenu(

      newitem('~Г~рафический редактор','',0,cmwinpbrush,hcnocontext,

      newitem('~Т~екстовый редактор','',0,cmwinwrite,hcnocontext,

      newitem('~К~артотека','',0,cmwincard,hcnocontext,nil)))),

     newitem('~О~ программе','',0,cmabout,hcnocontext,

      newline(

     newitem('~В~ыход','F10',kbf10,cmexit,hcnocontext,nil))))))),

    newsubmenu('~Б~аза',hcnocontext,newmenu(

     newitem('~О~ткрыть','ENTER',kbenter,cmopen,hcnocontext,

     newitem('~Н~овая','',0,cmnew,hcnocontext,

     newitem('~П~ереименовать','',0,cmrename,hcnocontext,

     newitem('~Р~едактировать','',0,cmedit,hcnocontext,

     newitem('~У~далить','',0,cmerase,hcnocontext,nil)))))),

    newsubmenu('~О~кна',hcnocontext,newmenu(

     newitem('~Р~аспахнуть','F5',kbf5,cmzoom,hcnocontext,

     newitem('~Д~вижение','CTRL+F5',kbctrlf5,cmresize,hcnocontext,

     newitem('~З~акрыть','ESC',kbesc,cmclose,hcnocontext,

      newline(

     newitem('~П~редыдущее','SHIFT+F6',kbshiftf6,cmprev,hcnocontext,

     newitem('~С~ледующее','F6',kbf6,cmnext,hcnocontext,nil))))))),

    newsubmenu('С~е~рвис',hcnocontext,newmenu(

     newitem('~П~ароль','',0,cmparole,hcnocontext,

      newline(

     newitem('~Т~екстовый редактор','',0,cmtext,hcnocontext,

      newline(

     newitem('~К~алендарь','',0,cmcalend,hcnocontext,

     newitem('К~а~лькулятор','',0,cmcalc,hcnocontext,

     newitem('~И~гра','',0,cmgame,hcnocontext,nil)))))))),nil)))))));

   visualres.put(pbar,'Меню');

   dispose(pbar,done)

  end;

 procedure createbank;

  var w:pbankwindow;

      r:trect;

  begin

   listres.init(new(pbufstream,init('expert.blc',stopen,1024)));

   bases:=pstringcollection(listres.get('Список'));

   r.assign(0,0,80,23);

   w:=new(pbankwindow,init(r,'Банк знаний'));

   visualres.put(w,'Банк');

   dispose(w,done);

   listres.done

  end;

 procedure createcalendar;

  var c:pcalendarwindow;

  begin

   c:=new(pcalendarwindow,init);

   visualres.put(c,'Календарь');

   dispose(c,done)

  end;

 procedure createcalc;

  var c:pcalculator;

  begin

   c:=new(pcalculator,init);

   visualres.put(c,'Калькулятор');

   dispose(c,done)

  end;

 procedure creategame;

  var g:ppuzzlewindow;

  begin

   g:=new(ppuzzlewindow,init);

   visualres.put(g,'Игра');

   dispose(g,done)

  end;

 procedure createnewwindow;

  var d:pnewwindow;

      r:trect;

  begin

   r.assign(20,5,60,12);

   d:=new(pnewwindow,init(r,'Создать базу'));

   with d^ do

    begin

     options:=options or ofcentered;

     r.assign(2,2,38,3);

     newinput:=new(pinputline,init(r,36));

     insert(newinput);

     r.assign(2,1,38,2);

     insert(new(plabel,init(r,'~В~ведите имя новой базы:',newinput)));

     r.assign(2,4,17,6);

     insert(new(pbutton,init(r,'~П~уск',cmok,bfdefault)));

     r.assign(23,4,38,6);

     insert(new(pbutton,init(r,'~О~тмена',cmcancel,bfnormal)));

     selectnext(false)

    end;

   visualres.put(d,'Новая');

   dispose(d,done)

  end;

 procedure createrenamewindow;

  var d:prenamewindow;

      ii:pinputline;

      r:trect;

      ss:pstatictext;

  begin

   r.assign(20,5,60,15);

   d:=new(prenamewindow,init(r,'Переименовать базу'));

   with d^ do

    begin

     r.assign(2,5,38,6);

     ii:=new(pinputline,init(r,36));

     insert(ii);

     r.assign(2,4,38,5);

     insert(new(plabel,init(r,'~В~ведите новое имя базы:',ii)));

     r.assign(2,7,17,9);

     insert(new(pbutton,init(r,'~П~уск',cmok,bfdefault)));

     r.assign(23,7,38,9);

     insert(new(pbutton,init(r,'~О~тмена',cmcancel,bfnormal)));

     selectnext(false)

    end;

   visualres.put(d,'Переименование');

   dispose(d,done)

  end;

 procedure createdeletewindow;

  var d:pdialog;

      r:trect;

  begin

   r.assign(25,4,57,11);

   d:=new(pdialog,init(r,'Удалить базу'));

   with d^ do

    begin

     r.assign(1,4,15,6);

     insert(new(pbutton,init(r,'~Д~а',cmok,bfnormal)));

     r.assign(17,4,31,6);

     insert(new(pbutton,init(r,'~О~тмена',cmcancel,bfdefault)));

     selectnext(false)

    end;

   visualres.put(d,'Удаление');

   dispose(d,done)

  end;

 procedure createexitwindow;

  var d:pdialog;

      r:trect;

  begin

   r.assign(30,5,50,12);

   d:=new(pdialog,init(r,'Выход'));

   with d^ do

    begin

     r.assign(1,1,19,3);

     insert(new(pstatictext,init(r,#3+'Вы хотите покинуть     "Эксперт"?')));

     r.assign(1,4,9,6);

     insert(new(pbutton,init(r,'~Д~а',cmok,bfdefault)));

     r.assign(11,4,19,6);

     insert(new(pbutton,init(r,'~Н~ет',cmcancel,bfnormal)));

     selectnext(false)

    end;

   visualres.put(d,'Выход');

   dispose(d,done)

  end;

 procedure createmachine;

  var r:trect;

  begin

   r.assign(0,0,80,23);

   machine:=new(pmachine,init(r,'Консультация'));

   with machine^ do

    begin

     r.assign(1,20,39,22);

     insert(new(pbutton,init(r,'Далее',cmmachnext,bfdefault)));

     r.assign(41,20,79,22);

     insert(new(pbutton,init(r,'Назад',cmmachprev,bfnormal)));

     selectnext(false)

    end;

   visualres.put

←предыдущая  следующая→
1 2 


Copyright © 2005—2007 «RefStore.Ru»