Форум «Всё о Паскале» _ Теоретические вопросы _ Как подключить Grаph
Автор: alecsandr 1.12.2009 16:02
У меня стоит windous7 , и я немогу подключить Grаph в turboPАSCАL. Что можно сделать или какая другая версия паскаля есть?
Автор: volvo 1.12.2009 16:07
http://freepascal.org/download.var
Автор: BOGGAD 6.12.2009 20:38
У меня Windows XP не могу подключить Graph. Пишет что файл GRAPH.TPU НЕ НАЙДЕН
Автор: volvo 6.12.2009 20:50
Цитата
Пишет что файл GRAPH.TPU НЕ НАЙДЕН
А он есть в той папке, где лежит EXE-шник твоей программы? А нужный тебе файл BGI там есть (EGAVGA.BGI)?
Автор: BOGGAD 6.12.2009 20:57
А он што, должен быть в одной папке с екзэшником?
Автор: Unconnected 7.12.2009 2:49
Должен лежать там, откуда он берется в коде программы.
Автор: Buffonchik 10.11.2010 0:12
у мня та же проблема пишет что не найден граф, хотя он там есть(
Добавлено через 10 мин. GRAPH.TPU НЕ НАЙДЕН он там есть( у мня винда хр сп2 должен работать(((
Автор: Client 10.11.2010 0:38
а путь к нему правильно указываешь?
Автор: volvo 10.11.2010 0:40
Цитата
он там есть(
Там, там... ГДЕ там?
Автор: Buffonchik 11.11.2010 23:17
путь указываю правильно)
в той папке где файл TURBO.EXE)
теперь заработало) я в свойствах turbo.exe поставил совместимость 256 цветов, размер экрана 640х480, качество галимое зато РАБОТАЕТ!!)))
Автор: TarasBer 12.11.2010 14:44
> качество галимое
А какое ты ещё ждал от 640х480?
Автор: Евгений 24.01.2011 9:53
Незнаю в какую тему писать . необессудьте. Решил с графикой поиграться на FPC , не найдя для него понятной для меня литературы, делал как для ТР7,
Цитата
инициализируем графический режим: InitGraph(gd, gm, ’указывается путь к драйверу (пусть будет пустым)’)
В итоге графический режим открывается на все мои 1280*800, но это еще пол беды, когда я попробовал круг в программе сделать пошире, увеличив радиус, он стал отображаться вот так: при меньшем радиусе отображается нормально. Вопрос: что я не правильно делаю? Вот код:
program ggg; USES Graph,crt; VAR gd,gm: Integer; BEGIN ReadLn; gd:=detect; InitGraph(gd,gm,''); rectangle(320,200,960,660); line(640,800,640,1); line(1,400,1280,400); circle(640,400,135); ReadLn; CloseGraph; ReadLn END.
P.S: Если это имеет значение ОС Vista.
Автор: volvo 24.01.2011 14:32
Цитата
В итоге графический режим открывается на все мои 1280*800, но это еще пол беды
Чего ж "полбеды" - это счастье, а не полбеды. Тебе надо чтоб было 640*480?
Попробовал запустить твою программу - при любых значениях радиуса окружность отображается нормально. Даже не знаю, с чем такое может быть связано. Попробуй использовать, например, WinGraph ( вот тут я выкладывал: http://forum.pascal.net.ru/index.php?s=&showtopic=27353&view=findpost&p=151866 ), что получится?
Вот так, например:
uses WinGraph, Crt; var gd, gm : Integer; begin ReadLn; gd := NoPalette; gm := m800x600; InitGraph (gd, gm, 'Test'); Rectangle (100, 100, GetMaxX - 100, GetMaxY - 100); Line (1, GetMaxY div 2, GetMaxX - 1, GetMaxY div 2); Line (GetMaxX div 2, 1, GetMaxX div 2, GetMaxY - 1); Circle (GetMaxX div 2, GetMaxY div 2, 190); ReadLn; CloseGraph; ReadLn end.
Автор: Евгений 25.01.2011 3:39
Цитата
Чего ж "полбеды" - это счастье, а не полбеды. Тебе надо чтоб было 640*480?
Счастье все таки получить, то что ожидаешь.. Судя по прочитанному в FAQ, ожидалось именно 640*480
Цитата(Altair @ 28.01.2005 23:16)
Вот код для инициализации лучшего из доступных видеорежимов.
Код
{Программа инициализирует граф. режим и ждет нажатия клавиши. код для TP7, BP7, BPW, FPC} Uses Graph, Crt; Var gd,gm:integer; Begin gd:=detect; InitGraph(gd,gm,''); readkey end.
Инициализируется режим 16 цветов, разрешением 640x480.
Ну да бог с ним, может я чего не правильно понял. Читая книгу по ТР7 нашел следующее:
Цитата
Если тип адаптера ПК неизвестен или если программа рассчитана на работу с любым адаптером, используется обращение к процедуре с требованием автоматического определения типа драйвера: Driver := Detect; InitGraph(Driver, Mode, 'C:\TP\BGI'); После такого обращения устанавливается графический режим работы экрана, а при выходе из процедуры переменные Driver и Mode содержат целочисленные значения, определяющие тип драйвера и режим его работы. При этом для адаптеров, способных работать в нескольких режимах, выбирается старший режим, т.е. тот, что закодирован максимальной цифрой.
Теперь в вопросе о моем разрешении, все вроде встает на свои места. Только не понятно, как его изменить так как мне нужно. Может я впереди лошади бегу? Кстати . а литературу по FPC по этому вопросу не подскажете? volvo вашу программу запустил, отображается нормально, попробую, еще с размерами поэксперементировать. Модуль WinGraph в каждую папку с исходниками нужно копировать? Я правильно понял?
Автор: -Volvo- 25.01.2011 5:51
Цитата
Судя по прочитанному в FAQ, ожидалось именно 640*480
FAQ бал написан для урбо Паскаля, FPC работает по-другому.
Цитата
Модуль WinGraph в каждую папку с исходниками нужно копировать? Я правильно понял?
Я сделал проще: создал папку \FPC\2.4.2\wingraph, туда положил wingraph.pas, потом запустил FPC, зашел в Options->Directories, и дописал в самом низу полный путь к этой папке.
Цитата
Кстати . а литературу по FPC по этому вопросу не подскажете?
По какому вопросу? Разрешений экрана? При чем тут FPC? Этим занимается библиотека (в данном случае - Graph или WinGraph) Вот и смотри исходники библиотеки. Кстати, в wingraph.pas начиная с 55 строки перечислены все поддерживаемые расширения.
Автор: Евгений 25.01.2011 6:04
Цитата
По какому вопросу?
Да для начала любую по FPC(желатально на русском), но имелось ввиду по графике на FPC. Видимо я невнятно вопрос задал, извиняйте.
Автор: Lapp 25.01.2011 6:36
Цитата(Евгений @ 25.01.2011 2:04)
Да для начала любую по FPC(желатально на русском), но имелось ввиду по графике на FPC. Видимо я невнятно вопрос задал, извиняйте.
Евгений, нет "графики FPC". Вся графика делается библиотеками (unit'ами). В дистрибутиве FP есть модуль Graph, который вполне аналогичен одноименному в TP. Различий не много (например, разрешения побольше). Модуль WinGraph в целом тоже аналогичен (впрочем, тут могу ошибаться, надо бы посмотреть поближе), только работает в окне. Так что в принципе можешь использовать книжку по TP, если не что-то специальное.
На всякий случай, упомяну одно различие в Graph TP и FP. В FP вызов InitGraph создает отдельное окно, в котором осуществляется весь графический вывод. Взаимодействие же с клавиатурой (как обычное, так и CRT) остается в главном окне проги. Так что управлять картинкой (граф-меню или движение объектов) становится затруднительно. Рекомендуется при работе с Graph в FP вместо CRT использовать модуль WinCRT - тогда клавиатурный ввод будет переключен на графическое окно.
Автор: Евгений 25.01.2011 7:06
Цитата
Евгений, нет "графики FPC".
Да я понимаю. Информация по работе с графикой при использовании FPC-вот что меня интересует. Надеюсь теперь я никого в заблуждение не введу?
Цитата
Так что в принципе можешь использовать книжку по TP, если не что-то специальное.
Ничего специального я делать пока не собираюсь, а информации в тех учебниках по ТР , что мне попадались, в этом вопросе тоже не ахти.
Автор: volvo 25.01.2011 16:20
Нет никаких особенных книг по работе с графикой в FPC (по FreePascal-ю вообще еще нет книг. Недавно где-то мелькало объявление, что написана какая-то книжка об FPC, но автор - жмот, даже не показал о чем книга /мол, покупайте и читайте/, а покупать кота в мешке - это сейчас не проходит. Пускай сам сидит и перечитывает свою писанину). Бери любую книгу, в которой описывается работа с BGI (графическим интерфейсом Борланда), и пиши программу. В крайнем случае понадобится небольшая шлифовка (иногда не совсем корректно отрабатывают некоторые процедуры, т.е., под TP работает нормально, а под FPC - остаются артефакты на экране).
Книга может быть о Турбо-Паскале, о Турбо-С (там тот же BGI используется), какую найдешь...
Цитата
а информации в тех учебниках по ТР , что мне попадались, в этом вопросе тоже не ахти.
Ну, это смотря что считать "ахти". Мне в свое время книжки "Д.Б.Поляков, И.Ю.Круглов: Программирование в среде ТП (версия 5.5)" хватило, чтобы начать использовать модуль Graph.
Автор: Евгений 26.01.2011 0:05
Цитата
написана какая-то книжка об FPC, но автор - жмот, даже не показал о чем книга
Случайно не эта? Ю.Л.Кетков, А.Ю.Кетков. Свободное программное обеспечение. Free Pascal для студентов и школьников. Издательство БХВ.
Автор: volvo 26.01.2011 0:42
Ага, эта. Уже выложили, значит, содержание. Ну, тогда я бы тем более не рекомендовал эту книгу (по крайней мере для той цели, для которой тебе нужна литература). В 30 страниц уместить всю 15 главу, "Графические средства языка FPC"? Не-не... Что-то не так...
Автор: Евгений 26.01.2011 1:15
Ну что ж тогда будем по ТР литературу читать(другую, что есть у меня), в любом случае спасибо.