Примеры программ на purebasic

Хочу поведать вам о языке программирования PureBasic. PureBasic — это мощный, компилируемый язык, основанный на синтаксисе стандартного Бейсика. Предназначен для создания автономных консольных и GUI приложений, игр и многого др. для различных платформ. Язык разрабатывается более 10 лет и постоянно совершенствуется.

Главная особенность PureBasic — кроссплатформенность. На данный момент поддеживаются операционные системы: Windows, Linux, MacOS и AmigaOS. Это значит, что тот же самый код может быть спокойно скомпилирован на разных платформах, с небольшими изменениями или без них вовсе.

С помощью языка PureBasic вы напишете любую программу любой сложности. Этот язык обладает очень простым синтаксисом, в то же время поражает своей функциональностью. Поэтому он легко усваивается и подходит для начинающих программистов. Впрочем, и для опытных кодеров имеется хороший арсенал инструментов.

Имеется визуальный проектировщик окон. Установленная среда разработки занимает около 25 МБ, не требует серьезных настроек и быстро загружается. В программе имеется лишь один маленький минус — она платная. Но это действительно не сильно смущает, не так ли? 😉

Share your code with modules — PureBasic 101

Главные особенности PureBasic

  • Огромный набор встроенных команд (более 800) позволяет быстро и легко создать любое приложение или игру
  • Поддержаны все ключевые слова стандартного Бейсика
  • Очень быстрый компилятор, создает чрезвычайно оптимизированный исполняемый код
  • Созданные исполняемые файлы не требуют сторонних DLL или интерпретаторов
  • Полный доступ к OS API для продвинутых программистов
  • Простой и очень быстрый 2D движок для игр (DirectX, SDL, HGE. )
  • Простая и высококачественная реализация 3D на движке OGRE
  • Оптимальное использование доступных аппаратных средств
  • Исходный текст совместим между Windows, Linux, MacOS и AmigaOS для игр и приложений
  • Удобная и компактная среда разработки, встроенный визуальный GUI редактор
  • Встроенный отладчик упрощает выявление и отлов программных ошибок

Пример

Продемонстрирую вам пример «Hello, Habr». К сожалению, код после нативного хабраредактора выглядит не очень красиво, поэтому я приложу скриншот.

image

Эта программа открывает окно с текстом и кнопкой закрытия. Если не считать комментарии, на все ушло 9 строчек кода. Исполняемый файл занимает 13 КБ.

image

С официального сайта можете скачать демо-версию программы. В поставке идет большое количество примеров.

* Бесплатная демоверсия ограничивает рамер кода 800 строками и невозможностью вызывать API функции OS.

UPD: Статью дополнил.

Источник: habr.com

The PureBasic 5.0 Form Designer — A Quick Tutorial

Примеры программ на purebasic

PureBasic Варезник:
http://forum.ru-board.com/topic.cgi?forum=35topic=13995#1

PureBasic — коммерческий язык программирования высокого уровня, основан на синтаксисе BASIC.

Читайте также:
Как настроить офисные программы

Предназначен для создания кроссплатформенных прикладных программ для AmigaOS, Linux, Microsoft Windows, Windows NT и Mac OS X. Компилятор PureBasic способен компилировать программы в код процессоров IA-32, m68k и PowerPC. Поддерживает компиляцию исполняемых файлов и динамических библиотек. Если не злоупотреблять API операционной системы, то код можно скомпилировать не изменяя его на все поддерживаемые платформы.

Поддерживает разные API: Windows API, MFC (Windows), SDL (Linux) и OpenGL.

Многопроходный компилятор PureBasic состоит из переводчика кода в ассемблер, ассемблера (FASM) и компоновщика. У PureBasic также есть и неплохой отладчик. Так как в компиляторе присутствует ассемблер, есть возможность в коде использовать ассемблерные вставки. Поддерживает наборы символов ASCII и Unicode.

Цитата:

Одно большое ИМХО(. ) («священные войны», если хотите):
Скачал я себе енто. Из чистого любопытства. Посмотрел. Ну, Basic. Ничего особенного. Удивлен, что кто-то на нем пишет. Разве что группка программеров-энтузиастов. Т.е. те, кто создали PureBasic. Остальным он незачем.

вообще-то это вовсе не «ничего особенного».
взять хотя бы то, что сделанное в этом «ну, Basic»‘е оконное приложение (минимального функционала, но всё-же) имеет размер 10kb (. ). При этом простота написания именно BASIC’овская! При этом всё умещается в 9 строк кода (. ) из которых окно создает одна (. ).
И при всем при этом это не VisualBasic’овская концепция — для работы приложения необходима библиотека на полтора метра, а именно полноценное так сказать standalone приложение работающее под виндовсом от 95 до 2003. Ну и ещё возможность скомпилировать это приложение как под виндовс, так и под линукс и мак!
При этом всё это чудо после установки занимает на диске 15 мегабайт . (с хелпом и туториалами) и в дальнейшем установки не требует вовсе (просто копируем папку и работаем). Так что я её без проблеи ношу на флешке и на любом компе могу в нужный момент быстренько склепать программку коли возникнет потребность.

Такое впечатление, что если эта штука подо что-то не заточена специально, то приспособить ее — практически глухой номер.

Цитата:

Господа, не появилось ли за прошедшее время какое-либо описание для сего продукта на старославянском, можно на новорусском?

Немного сдесь есть http://pbasic.spb.ru/

Окно с надписью «Демонстрационная программа»

Окно с кнопкой.
При клике по кнопке выккакивет окно сообщением об этом

Repeat ; Начало главного цикла.
Event=WaitWindowEvent() ; Получаем идентификатор события.
Gadget=EventGadget() ; Узнаём идентификатор активного гаджета.
If Event=#PB_Event_Gadget And Gadget=2 ; Условие будет выполнено при щелчке по кнопке.
MessageRequester(«Сообщение»,»Была нажата кнопка») ; Выводим на экран сообщение.
EndIf
Until Event = #PB_Event_CloseWindow ; Прерываем цикл при закрытии окна

Читайте также:
Как обновить программы на Хоноре

Размер скомпилированых прог примерно по 15 Кб каждая.
Для их работы не нужны никакие внешние файлы.
Работать будут под любой виндой начиная с Win95.

Добавлено:
Вот окно редактора

Цитата:

Кто знает, почему недоступны сайты pbasic.spb.ru (pbasic.info) и boolean.ru?

А какое отношение 1С (boolean.ru) имеет к PureBasic?

Страницы: 1 2 3

Источник: forum.ru-board.com

Лаунчер (на PureBasic)

Отправлено: 21-Апр-2018 10:27

Иногда требуется собрать какое то количество программ в оболочку, для удобного запуска.
Программ AutoPlay , имеется множество, но если по каким то критериям, они не устраивают, можно написать свою.
В данной теме, покажу (напишу и выложу исходник) как создать оболочку в PureBasic (если у пользователей появится интерес к данной теме)
Как то давно, пытался понять, принципы написания программ на PureBasic .
Но язык не в какую не поддавался осмыслению.
Хотелось написать лаунчер, нарисовал окно в редакторе форм и. завис.
Долго думал, как навесить события на нажатие клавиш, как подправить дизайн созданного окна,
так как в редакторе форм, нет возможности изменять все свойства элементов.
Но так и не справился.
Теперь чуть накопил знаний, могу научить и вас.
В чем же преимущество данного Лаунчера:
Малый размер файла
Можно создать как х86 так и х64
Можно добавить любой функционал, ограниченный лишь вашими знаниями языка.
Познакомитесь с PureBasic и возможно возьмете его на вооружение.
Минусы:
Сам язык платный, но не дорогой. (в интернете можно найти, полные, свежие версии)
Рисовать интерфейс лучше вручную, указывая позицию и размер элементов
Ну или в редакторе форм, набросать интерфейс, а потом перенести код, в основной.
Набросал тестовый проект, прошу протестировать правильное отображение кнопок (сверить с картинкой)

(в PureBasic изначально нет функции показа картинки с текстом на кнопке, поэтому сделана отдельная процедура на API)

Последний раз редактировалось: Joker-2013 (2019-03-03 16:32), всего редактировалось 2 раз(а)

Отправлено: 02-Мар-2019 21:53 (спустя 10 месяцев 11 дней)

AZJIO , смена иконки у запущенногозапускаемого файла:
SendMessage_(WindowID(0),#WM_SETICON,0,ExtractIcon_(0,»Shell32.dll»,23))

If PathFileExists_(GetExePath()+»icon.ico»)
LoadImage(0, GetExePath()+»icon.ico»)
If IsImage(0)
SendMessage_ (WindowID(0, #WM_SETICON, 0, ImageID(0))
EndIf
EndIf

Извлечение иконок из файла:

Последний раз редактировалось: Joker-2013 (2019-03-02 22:10), всего редактировалось 1 раз

Отправлено: 02-Мар-2019 22:00 (спустя 6 минут)

В вообще, по поводу Лаунчера с ini.
Если есть время, то можно сделать приложение, без ручной конфигурации файла ini
Видел код, когда объекты можно двигать по окну.
В итоге, делаем небольшой конструктор, в котором можно создавать объекты, например кнопки,
размещать их в окне приложения, растягивать окно итд итп.
Или как делфи7 отдельное окно с объектами и рабочее окно.
Но нужно много сил и времени.

Читайте также:
Как отменить выбор программы для открытия файла

Отправлено: 02-Мар-2019 22:12 (спустя 12 минут)

Но нужно много сил и времени.

вот это наверно определяющее, и ещё желание. Я уже делал прогу для создания гуи где можно перемещать элементы и делать доводку до пикселей стрелками, но это в лаунчере лишнее. Я наоборот делал чтобы кнопки сами размещались автоматически. Вариант на AutoIt3 протестирован, можно указать область размещения кнопок, указать число колонок, отступы между кнопками и они сами подстроятся под размеры.
Но я пробовал лаунчеры с пропиской координат кнопок, не знаю насколько это удобно, каждому своё, но там проблема допустим втиснуть кнопку, надо все переписывать.
LauncherPB — добавил Выход, сворачивание и область в ini

Отправлено: 02-Мар-2019 22:36 (спустя 23 минуты)

AZJIO , Вот ещё волшебная команда для управления только клавиатурой (Tab Enter)

;Навешиваем на окно:
AddKeyboardShortcut(0, #PB_Shortcut_Return, #Menu_Enter)
;А в действиях: (#Menu_Enter)
PostEvent(#PB_Event_Gadget, GetActiveWindow(), GetGadgetEnter, #PB_EventType_LeftClick)

По Enter выполняется действие как по ЛКМ и не надо дописывать дополнительные события.
Могу рабочий вариант накропать, если надо.

Отправлено: 04-Мар-2019 16:47 (спустя 1 день 18 часов)

Добавил поддержку иконок. Но в варианте AutoIt3 была функция _WinAPI_PathFindOnPath, то есть найти dll для иконок, я сделал проще, так как скорее всего для иконок и картинок лучше использовать соседнюю папку, то если относительный путь не содержит «», то ищем в System32. Также остался баг с вычислением колонок, при нечётном, когда не помещаются идеально квадратом, то есть в одной колонке 3 кнопки в другой 2, то не как ожидалось. Скорее всего это связано с тем что в PureBasic интегрер всегда округляется то целого, в AutoIt3 вычисляется в с плавающей точкой, при этом в PureBasic это решается добавлением десятичного к числу, например d*1.0, тогде вычисления будут в типе с плавающей точкой, а округлятся итоговый, но пока не разгадал где нестыковка, надо осмысливать, а я просто конвертировал код.

Отправлено: 05-Мар-2019 19:01 (спустя 1 день 2 часа)

Насчет запускатора с INI — написан давно.
Называется «Menu 4.2.2.56» функционал гибкий, осваивается быстро, работает уже у меня лет 15.
Автораны для пиратских игровых CD только на нем и писались. Всё время в сети распространяется с примером и хелпами от автора.
P.S. Блин, я такой старый, что вижу снова и снова на форумах одно и то же. Прогеры пишут то, шо давно написано, потом про их труды забывают и новые прогеры пишут то же самое по новой.

Источник: usbtor.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru