Форум программистов, компьютерный форум, киберфорум
Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.95/107: Рейтинг темы: голосов - 107, средняя оценка - 4.95
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2

FreeBasic. MyFbFramework + VisualFBEditor

14.07.2018, 20:36. Показов 26774. Ответов 158

Студворк — интернет-сервис помощи студентам
Начал новый фреймворк для FreeBasic: MyFbFramework
И редактор для него: VisualFBEditor

Файлы здесь:
https://www.cyberforum.ru/blog... g5346.html
https://github.com/XusinboyBekchanov/MyFbFramework

Скриншоты:

Демка:
PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
'#Compile -ex "mff\xpmanifest.rc"
#Include Once "mff\Form.bi"
#Include Once "mff\CheckBox.bi"
#Include Once "mff\CommandButton.bi"
#Include Once "mff\HScrollBar.bi"
#Include Once "mff\ComboBoxEdit.bi"
#Include Once "mff\ListControl.bi"
#Include Once "mff\TextBox.bi"
 
Using My.Sys.Forms
 
'#Region "Form"
    Type Form1 Extends Form
        Declare Constructor
        
        Dim As CheckBox CheckBox1
        Dim As CommandButton CommandButton1
        Dim As HScrollBar HScrollBar1
        Dim As ComboBoxEdit ComboBoxEdit1
        Dim As ListControl ListControl1
        Dim As TextBox TextBox1
    End Type
    
    Constructor Form1
        ' Form1
        This.Name = "Form1"
        This.Text = "Form1"
        This.SetBounds 0, 0, 350, 300
        ' CheckBox1
        CheckBox1.Name = "CheckBox1"
        CheckBox1.Text = "CheckBox1"
        CheckBox1.SetBounds 60, 42, 150, 36
        CheckBox1.Parent = @This
        ' CommandButton1
        CommandButton1.Name = "CommandButton1"
        CommandButton1.Text = "CommandButton1"
        CommandButton1.SetBounds 102, 108, 132, 60
        CommandButton1.Parent = @This
        ' HScrollBar1
        HScrollBar1.Name = "HScrollBar1"
        HScrollBar1.Text = "HScrollBar1"
        HScrollBar1.SetBounds 150, 192, 174, 18
        HScrollBar1.Parent = @This
        ' ComboBoxEdit1
        ComboBoxEdit1.Name = "ComboBoxEdit1"
        ComboBoxEdit1.SetBounds 228, 18, 66, 21
        ComboBoxEdit1.Parent = @This
        ' ListControl1
        ListControl1.Name = "ListControl1"
        ListControl1.Text = "ListControl1"
        ListControl1.SetBounds 24, 174, 84, 72
        ListControl1.Parent = @This
        ' TextBox1
        TextBox1.Name = "TextBox1"
        TextBox1.Text = "TextBox1"
        TextBox1.SetBounds 246, 60, 84, 42
        TextBox1.Parent = @This
    End Constructor
    
    #IfnDef _NOT_AUTORUN_FORMS_
        Dim frm As Form1
        frm.Show
    
        App.Run
    #EndIf
'#End Region
Миниатюры
FreeBasic. MyFbFramework + VisualFBEditor   FreeBasic. MyFbFramework + VisualFBEditor   FreeBasic. MyFbFramework + VisualFBEditor  

Вложения
Тип файла: zip Form1.zip (195.1 Кб, 15 просмотров)
3
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.07.2018, 20:36
Ответы с готовыми решениями:

FreeBASIC
Заметил, что уже имеющиеся на форуме темы в разделах: - QBasic - Visual Basic - VBA - Pure Basic посещаются довольно часто –...

Графика FreeBasic
Приветствую всех cyber-форумчан!:) Несмотря на наличие графического треда в младшем разделе, создаю ещё одну тему конкретно для...

Осваиваю (ем) FreeBasic
Решил больше не тянуть, а приступить сегодня. Если тема будет актуальна - возможно модераторы раздела ее (тему) как-нибудь оформят. ...

158
 Аватар для vlisp
1071 / 992 / 153
Регистрация: 10.08.2015
Сообщений: 5,447
19.08.2018, 17:45
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от coderxx Посмотреть сообщение
Если будем указать только одну файл или проект как основной, то кроме этого файла ничего не можем компилировать, придется закрыть сессию, а заново создать новую сессию.
Ну, не обязательно, можно было бы назначать текущим любой файл или проект.
Цитата Сообщение от coderxx Посмотреть сообщение
Или можно сделать Solution как в Visual Studio.
Насколько я понимаю Solution это решение, объединяющее несколько проектов. соответственно в сессии могут быть и решения на равных правах с проектами и файлами. Сессия это коллекция не связанных друг с другом объектов (файлов, проектов, решений) и дает возможность не перезагружать их в процессе работы. Причем можно сделать настройку для разделения вкладок: разделенная, когда для каждого проекта/решения/файла свой собственный набор вкладок, общая, когда для всех файлов/проектов/решений одна панель вкладок и вкладки могут быть перемешаны.

Нечто похожее реализовано в net beans, кажется
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
20.08.2018, 15:50
Цитата Сообщение от vlisp Посмотреть сообщение
Причем можно сделать настройку для разделения вкладок: разделенная, когда для каждого проекта/решения/файла свой собственный набор вкладок, общая, когда для всех файлов/проектов/решений одна панель вкладок и вкладки могут быть перемешаны.
Усложнять можно до бесконечности. Главное потом найти человека, который этим будет пользоваться.
Пользоваться - означает реализовывать проекты подстать этим возможностям. Т.е. возможности
должны что-то давать, а не быть балластом.
Кто-нибудь тут вообще осознаёт в какой ситуации сейчас комьюнити находится?
Идёт обсуждение космических каких-то штук, при том, что люди не пишут софт чуть более, чем вообще.
Осознание ещё не пришло, да да это тот самый FreeBASIC. Не PureBasic, не с++, не Delphi RAD не платформа .Net.
Мне напомнить про основной контингент? Или будет залажена старая шарманка про то, что мир меняется,
всё меняется. Это чем-то напоминает сюжет из фантастических 3D экшенов, например из старого Doom 3
на безжизненной планете создаётся субатомный фазовый деконструктор, который "позволит всё изменить"
и мол ведёт людей "в светлое будущее". Так вот обсуждение этой темы напоминает советы по созданию из
обычного молотка этого самого фазового деконструктора.

Цитата Сообщение от coderxx Посмотреть сообщение
- Исправлен баг по пути к компилятору (пробелы, кавычки, ...)
Ага если бы... Ну это так, призыв проверить всё более конкретно и более вдумчиво подойти к этому
вопросу в тестировании.

Цитата Сообщение от vlisp Посмотреть сообщение
Глобальные хранятся в файле настроек редактора, локальные в файле проекта.
Вариантов реализации этого функционала - сотни. Нормальных интуитивных - единицы.
Это задача UX в большей степени. Простой анализ даёт всё возможные расклады из которых
уже можно выбрать наиболее адекватный вариант.
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
20.08.2018, 17:10  [ТС]
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Сообщение от coderxx
- Исправлен баг по пути к компилятору (пробелы, кавычки, ...)
Ага если бы... Ну это так, призыв проверить всё более конкретно и более вдумчиво подойти к этому
вопросу в тестировании.
Это решается простыми кавычками, но я не обращал внимание до опубликования.

Цитата Сообщение от Quiet Snow Посмотреть сообщение
Кто-нибудь тут вообще осознаёт в какой ситуации сейчас комьюнити находится?
Идёт обсуждение космических каких-то штук, при том, что люди не пишут софт чуть более, чем вообще.
Осознание ещё не пришло, да да это тот самый FreeBASIC. Не PureBasic, не с++, не Delphi RAD не платформа .Net.
Мне напомнить про основной контингент? Или будет залажена старая шарманка про то, что мир меняется,
всё меняется. Это чем-то напоминает сюжет из фантастических 3D экшенов, например из старого Doom 3
на безжизненной планете создаётся субатомный фазовый деконструктор, который "позволит всё изменить"
и мол ведёт людей "в светлое будущее". Так вот обсуждение этой темы напоминает советы по созданию из
обычного молотка этого самого фазового деконструктора.
Если удобные инструменты появиться, люди будут программировать на этом языке тоже. Visual Basic знаете, 2-3 клика и программа готово. Большинство людей пользуется. Только в последнее время интерес к этому языку уменьшается из-за неумения создать 64-битные приложения (и ещё из-за не кроссплатформенности). Люди не программирует на FreeBasic? Посмотрите тогда freebasic.net/forum, сколько людей программирует. Моя конечная цель, проверить свои способности, изучить и обогащать свои знания в этом направлении.
0
Эксперт по электронике
7215 / 3394 / 347
Регистрация: 28.10.2011
Сообщений: 13,343
Записей в блоге: 7
20.08.2018, 21:49
Цитата Сообщение от coderxx Посмотреть сообщение
кроссплатформенности
Как у вашей IDE и библиотек с кроссплатформенностью?
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
21.08.2018, 04:35  [ТС]
Цитата Сообщение от locm Посмотреть сообщение
Как у вашей IDE и библиотек с кроссплатформенностью?
В планах имеется, для этого выбрал пространство имен My.Sys, а не как System.Windows как в VB.NET. За основу хочу брать wxWidgets, так и исходники открытые. Уже в исходники включал "X11.bi". Если начать то надо с "Control.bi" и "Canvas.bi", потому что в первом основные функции, а во втором функции рисования. И жду помощи от Linux-программистов.
0
Эксперт по электронике
7215 / 3394 / 347
Регистрация: 28.10.2011
Сообщений: 13,343
Записей в блоге: 7
21.08.2018, 12:47
Цитата Сообщение от coderxx Посмотреть сообщение
Если начать то надо с "Control.bi" и "Canvas.bi"
Т. е. кроссплатформенным достаточно сделать "Canvas.bi" и т. к. все "самописные" контролы базируются на нем? Я правильно понял? Если так, то подход верный и значительно облегчит задачу.
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
21.08.2018, 13:12  [ТС]
Цитата Сообщение от locm Посмотреть сообщение
Т. е. кроссплатформенным достаточно сделать "Canvas.bi" и т. к. все "самописные" контролы базируются на нем? Я правильно понял? Если так, то подход верный и значительно облегчит задачу.
"Canvas.bi" для рисования элементов, "Control.bi" для создания окон, все контролы ссылается на этот файл как базовый. Все равно придется рисовать каждый контрол, в Windows контролах рисования не нужно, потому что у Windows имеется собственные классы ("button", "static", "..."), а в Linux такие классы не имеется.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
21.08.2018, 15:51
Цитата Сообщение от coderxx Посмотреть сообщение
Это решается простыми кавычками, но я не обращал внимание до опубликования.
Намёк непонят, ладно расскажу, короче говоря компилятор писали ослы и есть довольно
неприятный баг с русскими путями(когда компилятор в папке с русским путём). В итоге
можно очень долго трахаться, полагая, что компилятор незыблемо чист и виновата IDE, но
когда компилируешь руками - глаза лезут на лоб .
Поэтому как unicode не продвигай, а геморроя меньше не становится. Каждую националную
раскладку надо тестировать на соотв. национальной винде, ибо никаких гарантий.
Причём это говно возникает в модулях mingw, а отображается как сотни ошибок при компиляции.

Сколько критических багов собственноручно отловил в разном софте - уже и не сосчитать,
но каждый раз убеждаюсь в том, что это тотальный недотестинг. Если программист один,
а не целый штат наёмников, то надо тестировать много и тщательно. Пофункционально,
помодульно, отсекая саму возможность появления ошибки.
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
21.08.2018, 16:30  [ТС]
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Сообщение от coderxx
Это решается простыми кавычками, но я не обращал внимание до опубликования.
Намёк непонят
Если путь (C:\Program Files\FreeBasic\fbc.exe) писать без кавычек, то система ищет программу "C:\Program" остальные "Files\FreeBasic\fbc.exe" думает как аргументы к программу "C:\Program". Говорил что, это решается с кавычками: "C:\Program Files\FreeBasic\fbc.exe", это баг уловил vlisp. До этого не обращал внимание на это.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
21.08.2018, 17:07
Цитата Сообщение от coderxx Посмотреть сообщение
Если путь (C:\Program Files\FreeBasic\fbc.exe) писать без кавычек, то система ищет программу "C:\Program" остальные "Files\FreeBasic\fbc.exe" думает как аргументы к программу "C:\Program". Говорил что, это решается с кавычками: "C:\Program Files\FreeBasic\fbc.exe", это баг уловил vlisp. До этого не обращал внимание на это.
Да это всё понятно, расскажи как ты будешь устранять описанный мной выше баг.
Поскольку это тоже баг и пользователи будут напарываться не осознавая кто виноват.
Уточню: правильное решение - всего одно.
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
21.08.2018, 17:41  [ТС]
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Уточню: правильное решение - всего одно.
Какой?
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
21.08.2018, 17:50
Цитата Сообщение от coderxx Посмотреть сообщение
Какой?
#68

есть довольно
неприятный баг с русскими путями(когда компилятор в папке с русским путём).
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
21.08.2018, 17:52  [ТС]
Цитата Сообщение от Quiet Snow Посмотреть сообщение
#68
Я это понял и тестировал, спросил про решение, которое вы говорили.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
21.08.2018, 18:01
Цитата Сообщение от coderxx Посмотреть сообщение
Я это понял и тестировал, спросил про решение, которое вы говорили.
Решение одно: ограничить ввод(путь к компилятору), отослать баг репорт. Ждать и терпеть.
При размещении сборки(если передаём, например, в виде архива) проверять размещение компилятора
и выводить предупреждение, если путь кривой.
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
21.08.2018, 18:03  [ТС]
Я тоже так думал
0
Эксперт по электронике
7215 / 3394 / 347
Регистрация: 28.10.2011
Сообщений: 13,343
Записей в блоге: 7
21.08.2018, 22:46
Цитата Сообщение от coderxx Посмотреть сообщение
в Windows контролах рисования не нужно, потому что у Windows имеется собственные классы ("button", "static", "...")
Это стандартные контролы, а я пишу про нестандартные (они видны на скриншотах Visual FB Editor).
В Linux нет стандартных API как в винде. GUI создается с помощью GTK, QT и т. д.
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
22.08.2018, 04:19  [ТС]
Цитата Сообщение от locm Посмотреть сообщение
Это стандартные контролы, а я пишу про нестандартные (они видны на скриншотах Visual FB Editor).
Эти нестандартные контролы создается на основе стандартных контролов

Цитата Сообщение от locm Посмотреть сообщение
В Linux нет стандартных API как в винде. GUI создается с помощью GTK, QT и т. д.
За основу хотел бы брать X11 API, а контролов рисуем сами основываясь на wxWidgets и GTK.
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
18.12.2018, 19:54  [ТС]
Обновил:
Версия 1.0.2.1178

1) Добавлен кроссплатформенность
2) Добавлен возможность открыть/сохранить сессию
3) Добавлен возможность указать главный файл сессии
0
 Аватар для vlisp
1071 / 992 / 153
Регистрация: 10.08.2015
Сообщений: 5,447
18.12.2018, 20:16
Цитата Сообщение от coderxx Посмотреть сообщение
Добавлен возможность указать главный файл сессии
это как?
0
 Аватар для coderxx
469 / 183 / 16
Регистрация: 25.02.2012
Сообщений: 418
Записей в блоге: 2
18.12.2018, 20:28  [ТС]
"Set As Main" укажет корневой файл (или проект) как главный. Когда выбирается файл внутри проекта, сделается файл главным для проекта (но не для сессии).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.12.2018, 20:28

FreeBASIC и сети
Здравствуй, форум. Всё дело в том, что есть одни сетевые функции, и для этих функций Я решил написать обёртку. Чтобы не возиться созданием...

Немного о FreeBasic
Чаще всего при начальном использовании какого-то языка , люди стараются выбрать простую, неприхотливую среду. Для FreeBasic можно...

Задача на графику в FreeBASIC
Помогите с задача по графике в FreeBASIC Построить совокупность n равных отрезков, центры которых лежат в центре экрана, а концы - на...

FreeBasic круги на воде
Очень интересный код имитирующий распространение кругов на воде. Описание алгоритма тут Что меня удивило, обычно когда идет речь о...

Синтаксические особенности FreeBasic
По совету Stabud создаю тему, в которой будем обсуждать семантику и синтаксис диалекта FreeBasic. Вот на такую программу я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
80
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru