к сожалению, у меня не было возможности ответить раньше(
мой паскаль ругается, выдает ошибку "file not found" в первой строке. ему не нравится модуль Graph( |
Так, ну этого я и опасался.
Ну что же, попробуем решить проблему. Начнем с вопроса: есть ли в составе Вашего пакета TurboPascal файл по имени graph.tpu? Всё остальное - только в случае положительного ответа на этот вопрос. Итак, если таковой файл имеется, то: 1. Открываем Турбо Среду. 2. Там лезем в Options - Directories. 3. В открывшемся окошке находим строку Unit Directories. Убеждаемся, что там правильно прописан путь к папке, в которой сидит graph.tpu. Если строка пустая или путь не соответствует, то вписываем правильный путь (напр. у меня это C:\TP\UNITS), после чего жмём ОК, потом обязательно вновь щелкаем по Options, а затем по Save. 4. Запускаем программу "Гармошка". Если она перестанет ругаться на отсутствие файла, но тем не менее не запустится, то начнем конфигурировать параметры процедуры запуска InitGraph. Но это уже следующий этап. Если же файла graph.tpu у Вас не обнаруживается, то это означает, что либо там встроена другая (не Borland) графика, либо графика отсутствует вовсе. Если так, то - увы! P.S. Света, всё-таки было бы очень желательно, если бы Вы смогли появляться здесь почаще. А то при коротких визитах раз в неделю мы, боюсь, протелепаемся с этой задачкой до Нового года. |
я сделала, как вы мне сказали. итог: на отсутствие файла перестал ругаться, но выдал следующее сообщение: BGI Error: Graphics not initialized (use InitGraph)
|
Тогда в этой строке вашей программы
Код:
InitGraph(grDriver, grMode, ''); Код:
InitGraph(grDriver, grMode, 'D:\TP\BIN\'); |
программа заработала, спасибо. только получается, что гармошка не "играет туда-обратно" а растягивается только в одном направлении. можно, пожалуйста, подредактировать так, чтобы гармошка "играла в обе стороны"?)
|
Цитата:
Ага, кажется понял, "где собачка порылась". Вероятно, Ваш Паскаль несколько строже относится к совместимости типов данных, чем мой. А потому попробуйте заменить функцию LeftBorder на такой вариант: Код:
Function LeftBorder(Step:Word):Boolean; |
у меня tp7 тоже грамонь играет в одну сторону.
а со сменой функции вообще какие то артефакты, не правильно отрисовывает. |
Цитата:
Правда, есть одно "но": оба пакета я гоняю исключительно в DOS-моде с эмуляцией VGA-экрана (640х480). А Вы, вероятно, запускаете в оконном? Может быть, дело в этом? Ладно, поразмыслю над другим вариантом прерывания цикла растяжки и перехода к циклу сжатия. |
Протестируйте, пожалуйста, такой вариант:
Код:
Uses CRT, Graph; |
подтверждаю. в DOS-mode работает туда и обратно. запускал через DOSBox 0.74.
|
Часовой пояс GMT +4, время: 16:06. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.