Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 13 
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 29.11.2003
Откуда: Chelyabinsk
Короче есть курсач, в кратце задача формулируется так: нужно сделать некое подобие текстового редактора со вставкой шаблонов. Т.е. набираешь себе текст, потом нажимаешь какуе-нибудь клавишу и выскакивает окошечко с шаблонами, например: заготовка цикла for ___ to ___ do... и так далее, проблема в том что у меня на первый взгляд нет пока идей как реализовать это самое окошечко, чтобы потом нормально возвратиться в тексту...

Есть мысль использовать объектно-орентированное в паскале, там должно быть нечто подобное, но я там просто не нарисую блок-схему алгоритма (наверное :( ), поэтому хочется как-нибудь без него, или не как?

Тема переименована. vor

_________________
Ушел, но обещал вернутся...



Партнер
 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Pascal или Delphi? DOS или Windows?


 

Member
Статус: Не в сети
Регистрация: 16.09.2004
Откуда: Севастополь
Цитата:
Pascal или Delphi


Первое язык программирование, второе среда и тип. Не путать.

Если с помощью Дельфи то no problem.
Если что ни будь типа Turbo Pascal, то я тебе сочувтсвую.
Попробуй сделать выпадающее меню, ну как должно быть File, Edit и т.д.
Например на F4 рисуется окошко, выбираеш менюшку и нажимаеш клавишу активации.
А окошко нужно стереть. Выбранное действие занесёш в какую ни будь переменную, а потом выполниш в тексте.
Вообще я уже плохо помню как там рисовать эти дурацкие меню и кодировки клавиш всякие, но в общем дурь полная.
А блок схема в принципе стандартная, например развилка пойдёт если пользователь вводит данные, то всё нормально, но потом - если кнопка Х1, то сделать то то, если Х2, то другое и т.п.
А вообще все эти блок схемы полная жуть и ерунда, поверь.
ООП тебе поможет только если ты в нём шариш, причём хорошо шариш, хотя я не вижу нужды его здесь использавать.

_________________
Есть ответы, которым лучше оставаться без вопросов...


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Цитата:
Первое язык программирование, второе среда и тип. Не путать.

Я никогда не путаю и при написани Pascal имел в виду именно Pascal для DOS, Delphi же уже имеет не Pascal, а именно Delphi :). Если просто сравнивать реализацию Pascal в Delphi и в Borland Pascal 7.0 то разница очень огромная ;)


 

Member
Статус: Не в сети
Регистрация: 16.09.2004
Откуда: Севастополь
Цитата:
Delphi же уже имеет не Pascal


Как это не имеет ??? я про язык программирования Delphi что то не слышал...

_________________
Есть ответы, которым лучше оставаться без вопросов...


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Ну у меня не всегда поворачивается язык назвать тот Pascal что в Delphi чисто Pascal :)


 

Member
Статус: Не в сети
Регистрация: 09.08.2004
Откуда: TSC! Russia
HeroesX
я бы делал так, запоминал область экрана, куда будет выводиться меню, потом выводишь туда свое меню, пользователь что-то выбирает, ты выводишь сохранненное ранее и делаешь нужные изменения

напрямую к видеопамяти в текстовом режиме можно обратиться так

Код:
TYPE
  Screens = array[1..50*80] of Byte;
VAR
  Screen    :  Screens Absolute $B800:$0000;
//процедура очистки экрана
Procedure AClrScr(var scr:Screens);
Var
 i,j:Word;
Begin
 j:=0;
 For i:=1 to 2000 Do begin
  j:=j+1;
  Screen[j]:=32;
  j:=j+1;
  Screen[j]:=7;
 End;
End;
//процедура вывода
Procedure AWriteXY(Var InScreen:Screens;X,Y:Byte;S:String;C:byte);
var
  i:byte;
begin
  For i:=1 to Length(S) do
    begin
      InScreen[(Y-1)*160+X*2+i*2-1]:=ord(s[i]);
      InScreen[(Y-1)*160+X*2+i*2]:=c;
    end;
end;



я делал что выводилось все в массив(типа образ экрана)
а потом присваивал переменной screen? которая находиться по абсолютному адресу $B800:$0000 - начало видеопамяти

работает надежно и быстро=)

_________________
Over's Beer Clan


 

Member
Статус: Не в сети
Регистрация: 11.11.2004
Откуда: Челябинск
А чем не нравятся стандартные функции вывода на экран? Помнится в Borland C++ 3.1 можно было выбирать, работают они через BIOS или напрямую с видеопамятью.

_________________
пишу я программу... и вдруг на клавиатуру выползает bug, буквально


 

Member
Статус: Не в сети
Регистрация: 09.08.2004
Откуда: TSC! Russia
Rius
ну во-первых, HeroesX про паскаль говорит
а во-вторых, я делал всякие окошки и со сворачиванием и разворачиваением в паскале таким образом и все это шустро работало, причем это был обычный Паскаль 7,0

_________________
Over's Beer Clan


 

Member
Статус: Не в сети
Регистрация: 11.11.2004
Откуда: Челябинск
alienfrom33 Вижу что паскаль, но что-то общее должно быть в настройках компилятора.
окошки тоже делал

_________________
пишу я программу... и вдруг на клавиатуру выползает bug, буквально


 

Member
Статус: Не в сети
Регистрация: 29.11.2003
Откуда: Chelyabinsk
Итак, я имел в виду именно Паскаль, под DOS, конкретно Turbo Paskal 7.0...
Да я знаю, что это полная муть, но что поделаешь, что дали то и дали...

alienfrom33 спасибо за идею, будем пробывать, а сколько так реально можно сохранить на старых машинах, а то у нас что-то стоит из разряда монстров образцов так 80-х годов... вроде 286i...

Hires знаю, что блок-схемы это полнейшая дурь, но пропед требует чтобы чуть ли не каждая строчка на блок схеме была отражена (вот гад а?), там же если ООП используешь, меню то на 3 стрнацы будет описания... :(

Еще вопрос, когда то я экспериментировал со ссылками( не помню точно как называются) но смысл втом что, в графическом режиме, на экран можно было вывести что-то, поверх чего-то, не стирая его... Ну и потом соответсвенно убрать.... Да... там замучаешься редактор делать в графическом режиме... Не катит

alienfrom33 да кстати ты не из Фаронова тексты про окошки брал? :)

Да еще нельзя ли в текстовом режиме менять страницы на экране? Надо будет посмотреть...

Rius настроек в компиляторе нету...

_________________
Ушел, но обещал вернутся...


 

Member
Статус: Не в сети
Регистрация: 11.11.2004
Откуда: Челябинск
Я так делал меню: сохранял область экрана, где будет расположено меню, в массив, вызывал функцию, которая бегает по меню, после окончания она возвращала выбранный пункт, восстанавливалась область экрана.
Страницы вроде есть.

_________________
пишу я программу... и вдруг на клавиатуру выползает bug, буквально


 

Member
Статус: Не в сети
Регистрация: 09.08.2004
Откуда: TSC! Russia
HeroesX
нет я эту книжку только на 2ом курсе увидел, а окошки в 8-9 классе делал
причем у енас в школе именно 286 стояли, так что все пашет, я тогда писал что-то вроде коммандера на паскале, если надо могу кинуть, там и окошки и менюшки, даже комменты местами=), токо кроме интерйеса там нет ниче почти=) не доделал-(

Цитата:
Да еще нельзя ли в текстовом режиме менять страницы на экране? Надо будет посмотреть...

можно

_________________
Over's Beer Clan


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 13 
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan