![]() |
Програмировать под Windows на PASCAL
Здравствуйте! Решаю задачи для института, задачи простые: вычислить число, написав программу на любом доступном языке. Пишу на Паскале, который изучал когда-то в коледже, другими пока не владею. Использую рабочую среду BORLAND PASCAL 7.0.
Правда програмировать на Паскале пока умею только под DOS, что не есть гуд: во первых - текст на чёрном текстовом экране смотрится не очень эстэтично, во вторых - скомпилированная досовская программа может не заработать под современной операционной системой WinXP или Win7, так например возникает ошибка деления на ноль из-за казалось бы безобидной процедуры ClrScr - очистка экрана. Собственно, абстрактный вопрос - как на Паскале создавать виндовые программы? Собственно в рабочей среде в "Compiler Options" можно "Compiler settings for" установить в "Windows target", я так понимаю при этом будет создано приложение WIN32, но этого мало, нужно же вместо досовских использовать другие процедуры ввода-вывода: создание окна, вывод текста и значений в этом окне. Пытался через поисковик найти справочник по виндовым процедурам - но ничего не нашёл. Собственно вопрос, помогите найти справочник по виндовым процедурам или какое-либо руководство, которое поможет разобраться как всё-таки програмировать на Паскале под Windows. Или мне стоит версию компилятора сменить? Советы перейти на другой язык не принимаются, у меня нет сейчас столько времени чтобы начать изучать что-то совершенно новое. |
Поищите Джеффри РИХТЕР "Эффективные win приложения".
Ну, и скорее всего Lazarus. |
RasKolbas, из бесплатного - ищи на торрентах Turbo версию Delphi.
Либо Lazarus. (FreePascal) Других компиляторов Pascal мне не встречалось. (Паскаль-подоные "может быть", но не паскаль, и не обжект-паскаль) |
Цитата:
Рекомендую для начала Lazarus - это сейчас единственное бесплатное средство быстрой разработки на базе компилятора FreePascal, причём не только под Windows. Это гораздо проще, чем самому создавать классы окон и.т.п. Создаёте приложение с одной главной формой, кидаете на него компоненты (поля для отображения и ввода текста, кнопки, списки и.т.п), настраиваете эти компоненты и программируете, что программа должна делать при нажатии на кнопки и.т.д. |
Pascal and Delphi на сколько я знаю почти одно и тоже.
По этому можно скачать бесплатную Lite версию. Вам же не нужно писать супер программ. Ну а там есть все стандартные компоненты. (Lite есть на официальном сайте.) |
Цитата:
Цитата:
А какая среда из перечисленных (Lazarus, Delphi и FreePascal лучше руссифицирована)? Какая минимальнее? (лишние прибамбасы не нужны). Сегодня взял в библиотеке учебник по Delphi. |
FreePascal - по сути свободный компилятор object pascal + простая IDE (на типа, что в Borland Pascal). Пригоден для разработки консольных приложений.
Lazarus - свободное IDE для разработки + библиотеки (втч визуальные). Оно еще даже не имеет версии 1 и пока слабовато, хотя вполне пригодно. В Lazarus FreePascal используется как компилятор. Delphi - коммерческое IDE для разработки + библиотеки (втч визуальные). Касаемо русификации - и у Lazarus, и у Delphi есть русские версии. Они, в целом, похожи, и Lazarus разрабатывается как альтернатива Delphi. Лично я от Delphi давно отказался, так как оно стоит денюжку и немалую. Цитата:
|
Цитата:
writeln ('Hello World!'); то в Delphi (по моему, в Lazarus тоже) нужно сначала кинуть на форму компонент TLabel (надпись) и в обработчике события формы OnCreate или OnShow написать такую строку: Label1.Caption:='Hello World!'; То есть, мы работаем с компонентами, каждый из которых имеет свойства и события. Свойства можно задать в инспекторе объектов, а можно и из кода программы. События возникают при каких-либо действиях с программой и её компонентами. Часть из них мы должны обработать - то есть, написать обработчики, в которых мы указываем, что делать с тем или иным компонентом в нужный момент. Рекомендую для начала ознакомиться с циклом статей: http://www.delphikingdom.com/lyceum/seminar.asp?ID=3 И вообще советую зарегистрироваться на этом сайте и исследовать его - там полно материалов как для начинающих, так и для программистов. Можете задавать вопросы - Вам помогут. По русификации - Delphi не русифицирован вообще (вернее, я как-то видел пиратскую русификацию одной из версий, но работать с ней невозможно), а Lazarus - грят, есть русская версия. Но сам я с ним не работаю, потому подтвердить не могу. |
Второй день изучаю Delphi. Впервые столкнулся с объектно-ориентированным программированием - ну теперь как освою и Си не так страшно будет изучать.
Так же впервые столкнулся с визуальным программированием. Вот тут возникает один вопрос, я конечно понимаю, что я это всё в литературе изучу, но хотелось бы забежать вперёд. Когда я визуально создаю новую форму ну скажем с именем с именем Form2 у меня в коде модуля появляется следующий текст: Код:
type |
Цитата:
Что касается вопроса... Проект Delphi имеет главный файл с расширением dpr (ради интереса посмотри его исходник в меню Project - View Source), в котором описано, какие unit-ы включены в этот проект. Собственно форма на Delphi записывается в два файла - unit с расширением pas и саму форму - файл с тем же именем, что и unit, но его расширение dfm. Первый файл содержит приведённый тобой код, а второй - описание всех объектов, размещённых на форме, и их свойств, задаваемых через Object Inspector. Руками ты редактируешь только pas-файл, а при визуальном создании среда работает со всеми файлами проекта. За счёт этого - вот такое поведение среды. |
Цитата:
Код:
Application.CreateForm(TForm2, Form2); Код:
Unit2 in 'Unit2.pas' {Form2}; Цитата:
|
Цитата:
Можно ещё динамически создать форму и её компоненты из кода. Но это весьма геморное дело. Честно говоря, сам так никогда не делал. Цитата:
|
Кстати, так как я в этом не большой спец, дам интересную ссылку. Посмотрите ответы на вопрос и статьи по ссылкам, указанным в ответах - думаю, многое будет ясно.
http://www.delphikingdom.com/asp/ans...IDAnswer=68068 Вот ещё кое-что http://www.delphikingdom.com/asp/ans...IDAnswer=77021 |
Время: 00:27. |
Время: 00:27.
© OSzone.net 2001-