![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
StrongS@t |
![]() ![]()
Сообщение
#1
|
Гость ![]() |
Господа програмисты!
![]() Как можно сделать таблицу 2 на 3 с помощью Pascal? При этом что бы можно было двигаться по ячейкам,заносить какойто текст в них и при желании пользователя редактировать уже заполненые. Буду очень благодарен! "Наш путь труден, но перспективы - светлые !" Мао Цзедун |
FreeMan |
![]()
Сообщение
#2
|
- ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 480 Пол: Мужской Репутация: ![]() ![]() ![]() |
сделай сам. выкинь сюда. проверим, поможем доделать.
-------------------- бб
|
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
StrongS@t, чем можно пользоваться для решения задачи? Если можно использовать объекты - могу кое-чем помочь ...
|
Atos |
![]()
Сообщение
#4
|
![]() Прогрессор ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 602 Пол: Мужской Реальное имя: Михаил Репутация: ![]() ![]() ![]() |
StrongS@t, начнём с самого простого. Сначала надо научиться:
1) узнавать в программе, какую клавишу нажал пользователь 2) выводить на экран собственно сетку таблицы, например, с помощью горизонтальных -- и вертикакальных | чёрточек. Это сможешь сделать? |
VelarThind |
![]()
Сообщение
#5
|
Гость ![]() |
В одной умной книжке читал, что есть в PASCALE символы псевдографики на пример:
1) Левый верхний угол - #218 2) правый верхний - 191 3) нижний правый - 217 4) левый нижний - 192 5) вертикальная черточка с отходов в право - 195 в лево - 180 обычная - 179 6) горизонтальная с отходом вниз - 194 вверх - 193 обычная - 196 просто пишешь Код write(#218,#196,#191); и прога выводит всю верхнюю строчку таблицы. Ну а с вводом ин-ции просто распознаёшь клавишу. ну на пример Код ... {вывод там переменных и таблицы} gotoxy(2,2); {первая клетка таблицы} c := readkey; if c = #0 then {если нажата то проверяем} case ord(readkey) of 72: gotoxy(wherex,wherey-2); {на одну строчку таблициы вверх} 80: gotoxy(wherex,wherey+2); {вниз} 75: gotoxy(wherex-2,wherey); {влево} 77: gotoxy(wherex+2,wherey); {вправо} end; else write(c); {вывод ин-фы} Сообщение отредактировано: VelarThind - 10.04.2005 22:00 |
Atos |
![]()
Сообщение
#6
|
![]() Прогрессор ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 602 Пол: Мужской Реальное имя: Михаил Репутация: ![]() ![]() ![]() |
VelarThind, в общем верно, но я бы добавил:
Цитата if c = #0 then {если нажата то проверяем} if c = #0 then {если нажата управляющая клавиша, то проверяем} Цитата case ord(readkey) of 72: gotoxy(wherex,wherey-2); {на одну строчку таблициы вверх} 80: gotoxy(wherex,wherey+2); {вниз} 75: gotoxy(wherex-2,wherey); {влево} 77: gotoxy(wherex+2,wherey); {вправо} end; Обработка сообщений от клавиатуры на самом деле будет сложнее - хотя бы надо проверять, не вышли ли мы за границы таблицы. {72, 80,75,77 - коды клавиш со стрелками} Цитата else write( c); {вывод ин-фы} else {нажата символьная клавиша}write( c); {вывод ин-фы} |
VelarThind |
![]()
Сообщение
#7
|
Гость ![]() |
НУ да. Я согласен, что доработать надо. А алгоритм вроде работает.
|
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 22:31 |