Для начинающих
[16]
С этих статей вырасли все, кто сейчас программирует на MP. Именно с этих статей надо начинать новичку, качество у них не всегда хорошее, но почитать стоит.
|
Разбираем.Обьясняем
[1]
В этой категории обьясняем, разьясняем библиотеки,примеры,мидлеты и т.д.
|
Прочее
[4]
Прочее, что не касается программирования: как настроить MP, что нужно для работы и др...
|
Главная » Статьи » Midlet Pascal » Для начинающих |
Да, да! Дорогой друг, ты не ошибся! Сёдня мы будем писать на паскале для мобилы! Но конечно не просто на паскале, а на специализированном для этих целей языке, называемом MIDLetPascal. Его можно слить с сайта разработчиков http://midletpascal.com. Процесс очень интересный - вроде пишешь на старом, добром паскале, а код конвертируется в яву и на выходе ты получаешь совершенно нормальное мобильное предложение. Ну давай попробуем разобраться по-подробнее. После создания нового проекта (File--New) мы получим следующиё кусок кода: Code program NewProject; begin drawText('Hello world!', 0, 0); repaint; delay(2000); end. Ну давай разбираться! С первой строкой вроде всё понятно, а вот в блоке begin..end надо приглядетсья повнимательнее. Этот код просто выводит на экран текст "Hello World!!!". Т.е. процедура procedure DrawText(text: string, xPos, yPos: integer); записывает нужный текст в буфер. Она имеет три параметра: text: string - текст, который записывается в буфер. procedure Repaint; - перерисовывает дисплей мобилы. Просто все функции отображения или текста, или рисунка сами его не выводят, а лишь записывают в буфер. Но перерисовка очень сложная процедура, требующая много времени, поэтому используй её как можно реже. procedure Delay(millis: integer); Приостанавливает выполнение программы в течение данного времени в миллисекундах. Т.е. если просто вывести текст на дисплей, то он отоброзится и сразу исчезнет. Не забывай это!!! Используй процедуру Delay. Вот вроде и разобрались с первой прогой на МидлетПаскале. Можешь компилировать проект, закачивать его на своего мобильно друга и хвастаться перед знакомыми девчёнками. А прикинь выражение товоей подруги, если ты ей на День Рождения подаришь такую прогу, которая будет её поздровлять! Всё! Она твоя!
Code program MoveText; var x, y: integer; keyCode: integer; begin repeat keyCode := GetKeyPressed; // Получение нажатой кнопочки if KeyToAction(keyCode) = GA_UP then y := y - 1; if KeyToAction(keyCode) = GA_DOWN then y := y + 1; if KeyToAction(keyCode) = GA_LEFT then x := x - 1; if KeyToAction(keyCode) = GA_RIGHT then x := x + 1; SetColor(255, 255, 255); // установливаем цвет рисунка в белый FillRect(0, 0, GetWidth, GetHeight);// очищаем экран SetColor(0, 0, 0); // установливаем цвет рисунка в черный DrawText('Hello world', x, y); // выводим текст в опред. позиции Repaint;//перерисовка Delay(100);//задержка until keyCode = KE_KEY0; end. Сначала вводим переменные, ни каких отличий с паскалем нету. Потом применяем конструкцию repeat..until, такую же как и в паскале. Затем инициализируемся, перехватываем код нажатой клавиши. И по ситуации перерисовываем текст - правее или левее, ниже или выше. Ещё попутно устанавливаем цвета стандартной процедурой procedure SetColor(red, green, blue:integer); Которая имеет три простых параметра : смодержание красного, зелёного и голубого, значения увеличиваются от 0 до 255. В конце работы с текстом в буфере перерисовывает его на экран, делаем задержку. Все действия продолжаются до того, пока не нажата клавиша 0. Всё просто, но весело. Авторство: http://www.liveofpc.3dn.ru/ Автор статьи: Васючков Андрей aka Soffrick | |
Просмотров: 1972 | Комментарии: 1 | Рейтинг: 5.0/2 |
Всего комментариев: 1 | |||
| |||