IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Проблема с меню
mr.
сообщение 13.04.2006 22:19
Сообщение #1





Группа: Пользователи
Сообщений: 5
Пол: Мужской
Реальное имя: Антон

Репутация: -  0  +


Делаю простенькое динамическое меню, с пунктами play,info,exit. ну так вот все работает почти как надо, но есть проблема с GotoXY, который упорно не работает smile.gif по идее этого меню для того чтобы выделить активный элемент, заново выводится до этого бывший активным но с другой заливкой, а потом выводится активный. при этом gotoxy должен переводить курсор перед выводом на зарезервированные икс и игрек выводимого элемента. тогда меню стоит на месте, но gotoxy не работает и просто выводятся новые элементы все дальше и дальше с каждым нажатием вверз или вниз. Помогите пожалуйста. Основное внимание на процедуру ShowItem, она как раз и выводит)

вот файл модуля меню и файл проги.

п.с. задание само под пунктом меню Play, оно графическое просто с каждым нажатием enter выводит рандомный квадрат smile.gif


Прикрепленные файлы
Прикрепленный файл  MENU.PAS ( 3.94 килобайт ) Кол-во скачиваний: 200
Прикрепленный файл  GRAPHIC.PAS ( 1.08 килобайт ) Кол-во скачиваний: 186
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 13.04.2006 22:24
Сообщение #2


Гость






Цитата
есть проблема с GotoXY, который упорно не работает
Как ты хочешь, чтобы работал GotoXY, если координаты, которые ты ему передаешь, больше чем размеры экрана? Ты не забыл, что максимум для ТЕКСТОВОГО режима (а GotoXY - текстовая процедура) - 25/50 строк на 80 столбцов?
 К началу страницы 
+ Ответить 
mr.
сообщение 13.04.2006 22:28
Сообщение #3





Группа: Пользователи
Сообщений: 5
Пол: Мужской
Реальное имя: Антон

Репутация: -  0  +


я не забыл это, но просто не понимаю что передавать то тогда. там же передаются коорты элементов, а элементы привязаны к коортам меню, а меню в пределах экрана unsure.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 13.04.2006 22:32
Сообщение #4


Гость






А меню-то графическое...
А графический экран - это 640 х 480 !!! Вот и рассчитывай, сколько пикселей соответствуют одной текстовой позиции по вертикали и горизонтали, и передавай в GotoXY текстовые координаты, соответствующие нужным тебе графическим...
 К началу страницы 
+ Ответить 
mr.
сообщение 13.04.2006 22:42
Сообщение #5





Группа: Пользователи
Сообщений: 5
Пол: Мужской
Реальное имя: Антон

Репутация: -  0  +


Код
procedure ShowItem(var PShow:PItem;P:PMenu);
        begin
        if Pshow^.Active=true then begin
        TextBackGround(P^.col2);
        TextColor(P^.col1);
        end
        else begin
        TextColor(15);
        TextBackGround(0);
        end;
        GotoXY(Pshow^.x,Pshow^.y);
        write(Pshow^.key);
        end;


меню текстовое. под заливкой я имел ввиду textbackground.

mega_chok.gif хахахах я все сделал! ты был прав, но я передавал не больше а меньше чем надо то есть коорты меню должны были быть 1,1. а были 0,0 =))) спасибо)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 23.07.2025 17:23
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"