FreeBASIC编程IDE——VisualFreeBASIC简介
VisualFreeBASIC(简称VFB)是之前FireFly的改进版本,用于FreeBASIC的可视化设计,是国内勇芳仿照FireFly样式设计的IDE。该IDE类似VB6语言集成开发环境。拥有和VB6高度相似的语法规则,同时具有和C/C++语言一样强大底层操作的功能,夸平台、支持面向对象,能开发32位和64位软件、DLL、LIB库,是VB6最佳进阶语言。该软件很绿色,很纯净,不需要任何运行库,解压到任意文件夹(因为编译器的原因,IDE路径不能有空格),打开即用,集成了IDE、编译器、帮助、函数库等,设计生成的EXE也是纯绿色,不需要任何支持库、运行库,独立运行。
一、软件下载
VFB软件可以在【Basic语言编程群 78458582】或者勇芳的个人网站(http://www.yfvb.com/soft-48.htm)上下载,目前最新版本为5.2.9(已更新至5.2.10)。压缩包如下:
二、新建窗体
打开软件默认显示最近打开的工程,里面包含了由勇芳工作室收集并且整理的大量例程,以及勇芳自己编写的很多例程。打开界面如图所示:
如果已有工程,则直接选择工程打开即可继续编辑,如果需要建立新的工程,则点击新建工程选项卡,如图:
选择1.标准VFB工程,如果创建EXE程序,则选择1.标准EXE工程,如果创建DLL程序,则选择2.标准DLL工程(DLL入口点其实不是标准的,需要修改入口点的可以看IDE设置里的说明)。然后新建,进入工程属性设置,如图。
输入工程名称,这里用test,选择工程目录,这里选择了桌面。需要注意的是,默认的工程目录在IDE的project目录下。如果自己选择工程目录,则需要自己手动创建文件夹来保存该工程,而在默认目录下,则会自动创建文件夹。(我认为是bug,但勇芳不改)
该对话框还可以设置启动窗体(针对多窗体的情况),EXE图标(窗体左上角的图标需要在窗体里设置,这里是显示到桌面或者工具栏上的图标)以及其他一些属性(用到再说吧)。
三、IDE界面介绍
新建窗体后,打开界面如下:左边是工具栏,中间是窗体设计区域,右边是工程、属性和库等,和VB6差不多啦,属性默认是中文的,如果习惯英文可以双击属性窗体,自动转换。
如果需要打开代码编辑器,双击标签控件(Form1)这个地方就可以切换到代码编辑,(当然双击窗体或者控件也是一样的,这点和VB6一样),或者你找到窗体设计上面的小工具栏里,也可以找到切换的按钮。代码编辑器如下所示:
界面跟布局和VB差不多,使用的是Scintilla源代码编辑控件,有的自动的代码提示,这个比VB强大,但也有不如意的地方,希望后期能改进吧,跟VS的编辑器比使用起来差距感还是有的。
四、IDE设置
根据个人习惯,可以对IDE进行设置,这里选择几个常用的进行介绍。该设置都在菜单的【工具】->【环境选项】中设置。
首先是代码编辑器选项设置,如图:默认的TAB空格字符数是3,由于个人习惯,改成4,注意,修改时需要同时设置字体(默认字体应该是微软雅黑),不选择会出现系统默认的字体,可能看起来不是那么习惯,我改了宋体。
其次是代码编辑器配色,如图:你可以使用默认的编辑器配色,大概就是黑色、白色和绿色了,本人更加喜欢土黄色,感觉颜色柔和些,可以自己新增配色方案(新增不能在这里改名字,bug),然后点击配色窗口修改,也可以直接拷贝现成的配色方案,到IDE所在的文件夹中找到Settings文件夹里的vfb.ini文件,用记事本打开,在[Themes]条目里增加配色(在条目后面直接粘贴就好)。这里提供我设置的配色方案(原先FireFly里搬过来的):
5=HumaneStudio|0,C1D5E3,0,8000,6633|0,C1D5E3,0,0,0|AA0000,C1D5E3,0,0,0|944C20,C1D5E3,0,0,0|C4,C1D5E3,0,0,0|589225,C1D5E3,0,0,0|C4,C1D5E3,0,0,0|608ABA,C1D5E3,0,0,0|0,A4CAD8,0,0,0|FFFFFF,0,0,0,0|0,4E4E30,0,0,0|C0C0C0,352411,0,0,0|C0C0C0,352411,0,0,0|352411,FFFFFF,0,0,0|FFFFFF,FF9933,0,0,0|C1D5E3,C1D5E3,0,0,0|EE687B,C1D5E3,0,0,0
直接在在vfb.ini里设置的话,需要先打开IDE运行一次,否则可能出错。设置完成后在代码编辑器配色里选择HumaneStudio就行了。
第三是编译器设置选项,如果需要优化代码的或者在编辑DLL时需要指定入口点获得线程的启动和终止消息(VFB没有提供该功能)时,可以设置该选项。
设置优化选项时,可以在附加编译选项开关里添加-gen gcc -Wc -O3,即指定使用gcc编译器,然后使用gcc的-O3优化级别,也可以用-O2,优化级别低些。如果不指定则默认使用fbc编译。
设置DLL入口点时,可以在附加编译选项开关里添加-Wl "--entry _DLLMAIN",这里_DLLMAIN是入口点DllMain,需要一致。
DLLMain入口点函数如下:(该函数需要自己添加到VFB工程)
Function DllMain(ByVal hModule As HANDLE, ByVal fwdReason As Dword, ByVal lpReserved As LPVOID) As BOOL Export Select Case fwdReasonCase DLL_PROCESS_ATTACH 'DLL被加载MessageBox(0,"DLL_PROCESS_ATTACH","hModule=" & Hex(hModule),0)Case DLL_PROCESS_DETACH 'DLL被卸载MessageBox(0,"DLL_PROCESS_DETACH","hModule=" & Hex(hModule),0)Case DLL_THREAD_ATTACH '单个线程启动MessageBox(0,"DLL_THREAD_ATTACH","hModule=" & Hex(hModule),0)Case DLL_THREAD_DETACH '单个线程终止MessageBox(0,"DLL_THREAD_DETACH","hModule=" & Hex(hModule),0)Case ElseEnd Select Function = TRUE
End Function
五、控件美化
VFB的控件图片与原先的VB图片相差较大,如果不习惯可以使用【Basic语言编程群】里群友上传的控件美化文件,也可以自己修改IDE文件目录里Settings文件夹里的iconfont.ttf文件中的图标,随便你喜欢。
有关VFB介绍就到这里,欢迎吐槽。
FreeBASIC编程IDE——VisualFreeBASIC简介相关推荐
- Computer:少儿编程—每个人都应该学习编程,它能教你如何思考—编程入门的简介(编程语言的特点种类开发工具对比人类语言)、编程应用、编程意义之详细攻略
Computer:少儿编程-每个人都应该学习编程,它能教你如何思考-编程入门的简介(编程语言的特点&种类&开发工具&对比人类语言).编程应用.编程意义之详细攻略 导读:乔布斯说 ...
- 线程编程常见API简介(中)
2019独角兽企业重金招聘Python工程师标准>>> 一.概述 在<线程编程常见API简介(上) >中讲述了有关线程创建过程中常用的 API 的使用方法,本节继续讲述有 ...
- Python编程IDE的选择
Python环境安装之后,接下来就是选择编写Python程序的编辑器了,这里就给大家推荐几种Python编辑器,我们简称这些编辑器为IDE.好的编程IDE可以提高编写代码效率,那咱话不多说,直接开始推 ...
- 一种基于CUDA标准的异构并行编程模型开发简介
一种基于CUDA标准的异构并行编程模型开发简介 目录 一.绪论 1.1研究背景及意义 1.2目标平台体系结构简介 二.HPPA基本组成结构 三.编译工具链开发 3.1 拆分工具HPCufe开发 3.2 ...
- 硬件开源编程利器MyHDL简介
来源:CSDN 作者: renzao_ai 硬件开源编程利器MyHDL简介 Verilog缺点 自从1995年Verilog HDL 1364-1995标准发布至今已经20多年了,说他经久不衰并不恰当 ...
- Motoman机器人离线编程——Motocom32开发简介
欢迎关注Jungle的Motoman机器人离线编程专栏系列文章: Motoman机器人离线编程--Motocom32开发简介 Motoman机器人离线编程--Visio Studio环境配置 Moto ...
- GTK+编程入门(1)—简介与glib库
GTK+编程入门(1)-简介与glib库(2015-7-23) 分类:GTK+ 一:GTK+简介 GTK+是一个软件开发工具包,其设计目的是支持在 X Window系统下开发图形界面的应用程序.G ...
- 10款最好的Python编程IDE,总有一款适合你!
对于程序员来说,除了日常争论世界上最好的语言是哪一门以外,哪款 IDE 是最好的也是争议颇多,今天我们就来介绍 10 款最好的 Python 编程 IDE,总有一款适合你!经典推荐 什么是 IDE? ...
- 【AOP 面向切面编程】AOP 简介 ( AspectJ 简介 | AspectJ 下载 )
文章目录 一.AOP 简介 二.AspectJ 简介 三.AspectJ 下载 一.AOP 简介 AOP 是 Aspect Oriented Programming 的缩写 , 面向切面编程 ; 利用 ...
最新文章
- 如何解决2012年7月1日增加闰秒后引起linux系统重启问题
- php 接收多图片base64
- 目标检测 - 如何在图片中标记Annotations中的坐标信息?
- Jenkins2021持续部署
- 教你怎么上传本地代码到github
- 把 JavaScript 放置到何处
- 【java】初始化一个指定大小的list,在指定位置set存入元素,下标越界
- php函数声明提前,php的日期处理函数及uchome的function_coomon中日期处理函数的研究...
- python2 md5加密_Python的加密方式:MD5加密
- 台式计算机中常用的机械硬盘,台式机如何安装机械硬盘?给台式电脑安装机械硬盘的详细步骤...
- CSS实现播放暂停按钮样式
- 用计算机税额怎么计算,企业所得税计算器(企业税收怎么算计算器)
- centos7 分辨率修改_centos系统修改屏幕分辨率问题
- python geany是什么_Geany
- (glidejs)glidejs的使用
- sshxcute_Java 使用SSH连接Linux 使用passwd命令修改密码
- 吉林省松原市谷歌高清卫星地图下载
- Xshell 7下载、安装步骤与使用教程
- Nacos 2.1.0 正式发布!堪称最强!
- echarts环形柱状图