FreeBasic
Главная
Вход
Регистрация
Понедельник, 30.12.2024, 19:31Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Как создать GUI приложение
asdsergДата: Понедельник, 16.03.2015, 14:17 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Offline
Здравствуйте. Решил вот попробовать себя в качестве программиста на freebasic. Язык очень понравился своей простотой. С консольными программами заморочек нет. Но вот что касается окошек!? Ни как не въеду. До этого кодил на VB.NET. Там все просто набросал контролов на формочку и вперед, как говорится. А тут - ступор. Использую Fbedit и как в ней создать GUI? Подскажите люди добрые! Подскажите на примере с использованием библиотеки Window9. Например на простом примере с разбором кода.
На VB код:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
TextBox2.Text = TextBox1.Text
End Sub

Как такое-же сделать в Fbedit?
С уважением asdserg.


Сообщение отредактировал asdserg - Понедельник, 16.03.2015, 14:19
 
haavДата: Понедельник, 16.03.2015, 14:51 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 1373
Репутация: 50
Статус: Offline
Да... После VB.Net создавать GUI на FB гемор еще тот smile
Для библиотеки window9 полноценных визуальных редакторов форм нет. Есть какие-то отдельные , но в них много ошибок. Поэтому весь GUI пишется вручную.

Если по коду представленному выше, то примерно следующее:

Код
#Include "window9.bi"

Dim As integer event ' переменная , принимающая событие
Dim As HWND hwnd ' хендл главного окна
hwnd=OpenWindow("Главное окно",300,10,500,500) ' создаем окно
TextGadget(1,10,50,40,20,"Текст")' создаем 1 текстовый гаджет
TextGadget(2,10,10,80,20,"")' создаем 2 текстовый гаджет
ButtonGadget(3,10,90,90,20,"Копировать") ' Создаем кнопку
SetGadgetColor(1,&hff,&hffffff,3) ' изменяем цвет 1 текстового гаджета
SetGadgetColor(2,&hfff,&hffff,3) ' изменяем цвет 2 текстового гаджета

Do
  event=WaitEvent()' получаем событие
  Select case event ' что за событие?
   Case EventClose ' если закрытие окна
    Exit Do ' тогда выход из цикла и завершение программы
   Case eventgadget ' если событие клика мышью по гаджету
    If EventNumber = 3 Then ' если гаджет имеет ID = 3
     SetGadgetText(2,GetGadgetText(1)) ' меняем текст во втором гаджете
    EndIf
  End Select
Loop


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
asdsergДата: Понедельник, 16.03.2015, 15:51 | Сообщение # 3
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Offline
Да действительно несколько геморно. Но разобраться попробую. А вот насчет визуального редактора встроенного в Fbedit, что можете сказать? Эксперементировал тут. В общем если при создании проекта поставить галку в Ресурсов(.rc) (думаю - это файл ресурсов), то слева появляется панель контролов, но куда их кидать, где сама форма? Пожалуйста подскажите как пользоваться данным визуальным редактором? Как его прикрутить к коду? Ни какой документации по этому поводу пока не нашел.
С уважением asdserg.
 
haavДата: Понедельник, 16.03.2015, 16:44 | Сообщение # 4
Генералиссимус
Группа: Администраторы
Сообщений: 1373
Репутация: 50
Статус: Offline
Цитата asdserg ()
Да действительно несколько геморно. Но разобраться попробую. А вот насчет визуального редактора встроенного в Fbedit, что можете сказать? Эксперементировал тут. В общем если при создании проекта поставить галку в Ресурсов(.rc) (думаю - это файл ресурсов), то слева появляется панель контролов, но куда их кидать, где сама форма? Пожалуйста подскажите как пользоваться данным визуальным редактором? Как его прикрутить к коду? Ни какой документации по этому поводу пока не нашел.


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

Также читаем справку FbEdit, смотрим примеры в fbedit\Projects\Samples

Также есть визуальный редактор VISG. Он создает сразу код с чистым WinApi. Правда код "грязноват" на мой взгляд, в общем мне больше по душе вручную писать изначально, чем заморачиваться с визуальными редакторами. Это на vb.net все сделано шикарно, на FB такого нет.


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
haavДата: Понедельник, 16.03.2015, 16:48 | Сообщение # 5
Генералиссимус
Группа: Администраторы
Сообщений: 1373
Репутация: 50
Статус: Offline
Кстати забыл совсем, может этот редактор посмотрите: http://www.planetsquires.com/firefly_freebasic.html . Он должен быть ближе вам, но я его шибко не тестировал

Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
asdsergДата: Понедельник, 16.03.2015, 18:12 | Сообщение # 6
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Offline
Большое Вам спасибо за советы. Буду разбираться.
С уважением asdserg.
 
  • Страница 1 из 1
  • 1
Поиск: