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

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

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

> Простенькая таблица, но возникли сложности :-)
wolf_larsen
сообщение 6.05.2007 11:25
Сообщение #1





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

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


Задача: Нарисовать табличку, в которой можно двигатся стрелочками и заносить данные, данные в табличке выводятся в виде первых двух чисел и троеточия(12...), вводятся данные через отдельное окно снизу экрана, данные должны сохранятся в массив(не реализованно, но тут разберусь) и показыватся в табличке указанным уже методом. Пока для проверки программа должна рисовать в ячейке просто букву Х, но она этого не делает, у меня есть подозрение, что метод, которым я решил это сделать не совсем подходит для данной задачи, а именно в каждой ячейке таблицы создается собственное окно, возможно так делать нельзя и надо просто ограничить движение курсора внутри ячейки. Подскажите каким образом лучше всего реализовать данную задачу, или если метод реализации правильный, то почему буковка Х не рисуется wink.gif .
 Program interpol;
uses crt;
const Esc= #27;
Right= #77;
var n,i,x,y,Xn,Yn,key:integer;
curchoice,status, temp:byte;
z:real;
ch,c,s:char;
begin
clrscr;
curchoice:=1;status:=128;textcolor(7);
asm mov ah,01;mov cl,$20;int $10;end;
Xn:=2;Yn:=2;
gotoxy(Xn,Yn);textcolor(15);
textbackground(black);
n:=21;
x:=1;y:=1;
for i:=1 to n do
begin
GotoXY(x,y);
write('ЙНННННН»');
writeln;
gotoxy(x,y+1);
write('є є');
writeln;
gotoxy(x,y+2);
write('ИННННННј');
if x<80 then
x:=x+8
else
begin
x:=1;y:=y+3;
end;
end;
x:=2;y:=2;
window(2,2,7,2);
key:=0;
repeat
c:=readkey;
if c=#0 then
begin
s:=readkey;
case s of
#77: if x<70 then x:=x+8;
#75: if x>8 then x:=x-8;
#72: if y>3 then y:=y-3;
#80: if y<5 then y:=y+3;
{ #13: key:=1;}
end;
window(x,y,x+5,y);
end
else
begin
case c of
#13:
begin
window(1,23,20,23);
readln(z);
window(x,y,x+5,y);
Gotoxy(x,y);
writeln('x');
end;
end;
end;
until c=#27;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 



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