论坛的首页
勇芳的软件
教程和帮助
VisualFreeBasic编程文档
勇芳系列软件帮助说明教程
留言或交流
登录
搜索
登录
搜索
勇芳
累计撰写
330
篇文章
累计收到
0
条评论
首页
栏目
论坛的首页
勇芳的软件
教程和帮助
VisualFreeBasic编程文档
勇芳系列软件帮助说明教程
留言或交流
登录
自定义幻灯片
最新文章
2026-1-21
VisualFreeBasic内置库_CCur 货币数值
CCUR 是Currency数据类型的包装类。货币是以8字节的两个补码整数值除以10000为比例实现的。这给出了一个 精确的固定小数点的数字, 小数点左边有15位, 右边有4位数字。货币数据类型对于涉及货币的计算非常有用, 或者对于任何需要精确的固定小数点计算而言, 精确度很重要。 CCUR 包装实现此 fixed-point 类型的算术、赋值和比较运算, 并提供对小数点两侧的数字的访问, 其形式为两个部分: 一个整数部分, 它将值存储在小数点, 以及将值存储在小数点右边的小数部分。小数部分在内部存储为-9999 (CY_MIN_FRACTION) 和 +9999 (CY_MAX_FRACTION) 之间的整数值。函数 GetFraction 返回一个按 10000 (CY_SCALE) 因子缩放的值。\ 在指定 CCUR 对象的整数和小数部分时, 请记住小数部分是范围0到9999的数字。在处理美元、人民币这样的货币时, 这一点很重要, 即在小数点后仅使用两个有效位表示金额。即使最后两位数字不显示, 也必须考虑到它们。 使用方法 先引用库文件 #include Once "Afx/CCur.inc" DIM c AS CCUR = 12345.1234 print c c = c + 111.11 print c c = c - 111.11 print c c = c * 2 print c c = c / 2 print c c += 123 print c c -= 123 print c c *= 2.3 print c c /= 2.3 print c c = c ^ 2 print c c = SQR(c) print c DIM c2 AS CCUR = c print c2 DIM c3 AS CCUR = c * 2 print c3 DIM c4 AS CCUR = c3 / 2 print c4 DIM c5 AS CCUR = "1234.789" print c5 DIM c6 AS CCUR c6 = "77777.999" print c6 DIM c7 AS CCUR c7 = c6 print c7 DIM cl AS CCUR = 3 cl = LOG(cl) print cl DIM v AS VARIANT = cl dim cv AS CCUR = v print cv print "--------------" DIM cx AS CCUR FOR i AS LONG = 1 TO 1000000 cx += 0.0001 NEXT PRINT "0.0001 added 1,000,000 times = "; cx
2026年-1月-21日
41 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_CComplex 复数
CComplex是一个使用FreeBasic编译器处理复数的类。 复数使用类型_complex来表示。实部和虚部存储在成员x 和y . TYPE _complex x DOUBLE '实部 y DOUBLE '虚部 END TYPE 备注:第一个版本是GNU科学图书馆中C函数的修改版本,受GNU通用公共许可证(GPL)的限制。它们在AfxGslComplex.inc文件中可用,该文件使用不同的名称空间“GSL”而不是“AFX”来避免冲突。第二个版本是基于.NET Complex.cs类的一系列程序,它具有更宽松的MIT许可证。它们在AfxComplex.inc文件中可用。第三步是重用基于.NET的过程来构建CComplex类。 使用方法 先引用库文件 #include Once "Afx/CComplex.inc" 就类似数值类型使用 Dim a as CComplex a=1 a=a+1
2026年-1月-21日
47 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_CCDOMessage 电子邮件
CCDOMessage是允许使用CDO发送邮件的FreeBasic类。 使用方法 先要引用库文件 #include Once "Afx/CCDOMail.inc" ' // 创建一个CCdoMessage类的实例 DIM pMsg AS CCDOMessage ' // 组态 pMsg.ConfigValue(cdoSendUsingMethod, CdoSendUsingPort) pMsg.ConfigValue(cdoSMTPServer, "smtp.xxxxx.xxx") pMsg.ConfigValue(cdoSMTPServerPort, 25) pMsg.ConfigValue(cdoSMTPAuthenticate, 1) pMsg.ConfigValue(cdoSendUserName, "xxxx@xxxx.xxx") pMsg.ConfigValue(cdoSendPassword, "xxxxxxxx") pMsg.ConfigValue(cdoSMTPUseSSL, 1) pMsg.ConfigUpdate ' // 收件人姓名 - >根据需要更改 pMsg.Recipients("xxxxx@xxxxx") ' // 发件人邮件地址 - >根据需要更改 pMsg.From("xxxxx@xxxxx") ' // 主题 - >根据需要更改 pMsg.Subject("This is a sample subject") ' // 文字正文 - >根据需要更改 pMsg.TextBody("This is a sample message text") ' // 添加附件(使用绝对路径)。 ' // 注意通过重复呼叫,您可以附加多个文件。 pMsg.AddAttachment ExePath & "\xxxxx.xxx" ' // 发送消息 pMsg.Send IF pMsg.GetLastResult = S_OK THEN PRINT "Message sent" ELSE PRINT "Failure" 要使用gmail发送消息,只需更改服务器名称和服务器端口的值: pMsg.ConfigValue(cdoSMTPServer, "smtp.gmail.com") pMsg.ConfigValue(cdoSMTPServerPort, 465)
2026年-1月-21日
48 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_CCDAudio CD光盘
CCDAudio类允许使用MCI播放CD光盘。 使用方法: #include Once "Afx/CCDAudio.inc" DIM pAudio AS CCDAudio pAudio.Open pAudio.Play
2026年-1月-21日
43 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_WinFBX(Windows框架)
JoséRoca创建的FreeBASIC很棒的Windows框架。数百个与Windows编程相关的函数和类。这是必须具备的编程工具。 这是牛人老外写的非常详细的用于WIn系统的库,对应库文件为 AFX ,函数名称一般开头都带 AFX [CCDAudio CD光盘] 使用MCI播放CD光盘。 [CCDOMessage 电子邮件] 使用CDO发送邮件的FreeBasic类。 [CComplex 复数] 一个使用FreeBasic编译器处理复数的类 [CCur 货币数值] 是Currency数据类型的包装类。 [CDec 128位十进制数] 十进制数据类型的包装类。支持有符号的128位 (16 字节) 值 [CDicObj 变体集合] 变体的关联数组。每个项目都与一个唯一的密钥相关联。密钥用于检索单个项目。 [CDispInvoke 调用COM] [CDSAudio 音频] 允许使用Direct Show播放各种格式的音频文件。 [CFileSys 文件系统] 包装Microsoft文件系统对象 [CFileTimeSpan 文件时间跨度] 用于管理在执行有关创建、上次访问或上次修改文件的操作时,经常遇到的相对时间段。 [CFileTime 文件时间] 该类提供了管理与创建、访问和修改文件相关的日期和时间值的方法。 [CFindFile 文件搜索] 执行本地文件搜索。 [CIniFile ini配置文件] 是一个包装类,以简化.ini文件的使用。 [CMemBmp 内存位图] 内存位图。 [COleDateTimeSpan OLE时间跨度] 表示一段时间间隔,内部存储为此时间跨度中的秒数。 [COleDateTime OLE日期和时间] 封装OLE自动化中使用的DATE数据类型。 [CRegExp 正则表达式] VBScript的正则表达式对象上的一个包装类。 [CSafeArray 变体安全数组] 创建和管理几乎所有支持VARIANT的类型的单维和多维数组。 [CShortcut 快捷方式] 允许以编程方式创建快捷方式。 [CURLShortcut URL快捷方式] 允许以编程方式创建URL快捷方式。 [CStack 变体栈集合] 栈集合是一组有序的数据项, 采用后进先出方法访问数据项。 [CQueue 变体队列集合] 队列集合是一组有序的数据项, 使用先进先出法访问数据项。 [CTextStream 文本流] 允许读写连续的文本文件(有时也称为文本流)。 [CTimeSpan 时间跨度] 表示一段时间间隔,内部存储为此时间跨度中的秒数。 [CTime64 格林威治时间] 代表一个世界标准的时间和日期。 [CVar 变体变量] VARIANT数据类型。 variant数据类型是可以用来表示任何其他数据类型的标记联合。 [CWindow] [CWinHttpRequest WinHTTP] HTTP / 1.1 Internet协议的服务器支持的高级接口。 [CWmiServices WMI管理] 用于基于Windows的操作系统上的管理数据和操作的基础类。 [CWSTR 宽字符串] 一个动态的unicode null终止的字符串,
2026年-1月-21日
64 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_Window9(跨平台界面库)
Window9 函数库由俄国人制作,官网:http://users.freebasic-portal.de/freebasicru/index.html 在 VFB 的起始模块或软件第一行写 #Include "window9.bi" 后,就可以任意调用本库提供的函数。 (注意:只有使用到的函数才会被编译到EXE中,不会编译全部函数,放心使用。) Window9 函数库实现 WIN系统 和 LINUX 系统通用的函数,以方便跨平台使用。 借助该库,简单的几行代码就能制作包含窗口和控件的 GUI 程序,而且支持事件处理。 使用方法 引用库: #Include "window9.bi" 那么里面的函数都可以使用了,具体什么函数请看VFB帮助。 是一个大的系列库,函数非常多。因为 VFB 本身有自己的窗口和控件,里面的窗口和控件用不着,但有其它的非常多的实用函数,可以拿来使用。
2026年-1月-21日
44 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_RayLib (跨平台3D游戏编程)
RayLib 是一个简单易用的跨平台游戏开发库12。以下是关于它的详细介绍: 基本信息: 开发者与授权:由 raysan5 开发,遵循 zlib/libpng 许可,这意味着用户可以自由地使用和扩展这个库。 编写语言:使用 C99 标准编写,代码风格遵循 PascalCase(大驼峰式)命名规则,便于理解和使用。 特点: 跨平台性:支持多种操作系统,包括 Windows、Linux、macOS、Raspberry Pi、Android 甚至 HTML5 等,这使得开发者可以在不同的平台上运行使用 RayLib 开发的程序,大大提高了代码的可移植性和复用性。 硬件加速:基于 OpenGL(1.1、2.1、3.3、4.3 或 ES 2.0)进行硬件加速,能够充分利用图形硬件的性能,实现高效的图形渲染,即使在处理复杂的 2D 和 3D 图形时也能保持较好的性能。 功能全面: 支持多种字体格式,如 XNA SpriteFonts、BMFonts、TrueType Font(TTF)、Signed Distance Field(SDF)等,方便开发者在游戏或应用中使用不同风格的字体。 支持多种材质格式,包括压缩材质(如 DXT、ASTC 等),可以有效减少资源占用,提高加载速度。 具备全面的 3D 图形支持,包括绘制基本的几何形状(如立方体、球体等)、加载和渲染 3D 模型、使用广告牌(Billboards)、高度图(Heightmaps)等技术。 支持动画 3D 模型,能够为游戏中的角色或物体添加动画效果,增强视觉表现力。 支持多种着色器,包括模型着色器和后处理着色器,开发者可以通过编写着色器代码来实现各种特殊的图形效果,如光影、模糊、颜色调整等。 内建数学模块:提供了高效的数学模块,支持矢量、矩阵和四元数(Quaternion)运算,对于处理 3D 图形中的坐标变换、旋转、缩放等操作非常有用2。 无外部依赖:RayLib 包含了所有必要的库,使得集成过程简单而直接,不需要额外安装其他依赖项,降低了项目的配置和管理难度1。 应用场景: 游戏开发:无论是简单的 2D 休闲游戏,还是复杂的 3D 大型游戏,RayLib 都能提供相应的功能和工具,帮助开发者快速构建游戏原型或完整的游戏项目。 教学与实验:对于教授图形学或游戏编程的课程,RayLib 是一个很好的教学工具,它的简洁性和功能性可以让学生快速理解游戏开发的基本原理和技术。 艺术作品与交互式应用:开发者可以利用 RayLib 快速实现各种视觉效果和交互式应用程序,如艺术展示、交互式动画等。 原型制作:在进行大型项目之前,可以使用 RayLib 快速搭建出应用原型,验证想法和功能,降低开发风险和成本。 学习资源: 官方文档:RayLib 的官方网站提供了基本的功能列表和一些示例代码,开发者可以通过阅读这些内容来了解库的使用方法。 社区资源:RayLib 拥有活跃的社区,社区成员创建了许多教程、示例代码和第三方扩展库,这些资源可以帮助开发者更快地掌握 RayLib 的使用技巧,解决遇到的问题。 使用方法 Sub 多线程RayLib绘画主体(hWndForm As hWnd) Sleep 300 Dim ra As Ray游戏绘图库 = hWndForm '===================================================================== '这里是多线程执行,需要在循环里不停的绘画,就产生了动画。 '不可以在此中写操作窗口代码,需要发消息给窗口处理。不然可能软件崩溃。 '======================================================================= zyx.Width = DpiUnScaleF(raylib.GetScreenWidth) zyx.Height = DpiUnScaleF(raylib.GetScreenHeight) zyx.x = 0 zyx.y = 0 zyx.w = zyx.Width zyx.h = zyx.Height rAptr = @ra Dim i As Long, x As Single, y As Single, t As Single raylib.InitAudioDevice() ' 初始化音频设备 见后面章节中的游戏编程里,说明例题。 写代码时,所有API都已经提供,还有为了方便使用,VFB封装一下常用的函数。
2026年-1月-21日
81 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_OpenGL (跨平台3D绘图底层库)
OpenGL(Open Graphics Library)是用于渲染 2D、3D 矢量图形的跨语言、跨平台的应用程序编程接口(API)。以下是关于 OpenGL 的详细介绍: 1. 历史与发展 OpenGL 最初是由 SGI 公司(Silicon Graphics Inc.)在 20 世纪 90 年代开发的,目的是为了提供一种统一的、高性能的图形渲染方式。后来,它逐渐成为了一个开放的标准,由 Khronos Group 维护和发展。许多图形硬件厂商都支持 OpenGL,使其在各种操作系统和设备上得到广泛应用。 2. 工作原理 图形管道(Graphics Pipeline):OpenGL 的核心是图形管道,它是一个将 3D 模型转换为 2D 图像的过程。这个管道包括多个阶段,如顶点处理、图元装配、光栅化、片段处理等。 顶点处理:接收输入的顶点数据(如 3D 模型的顶点坐标、法线、纹理坐标等),可以对顶点进行变换(如平移、旋转、缩放)、光照计算等操作。 图元装配:将顶点组合成更复杂的几何图元,如点、线、三角形等。这些图元是构成 3D 模型的基本单元。 光栅化:将图元转换为屏幕上的像素片段。这个过程涉及到确定哪些像素在图元内部,以及计算它们的属性。 片段处理:对光栅化生成的像素片段进行处理,如纹理映射、颜色混合、深度测试等操作,最终生成要显示在屏幕上的 2D 图像。 3. 特点 跨平台性:可以在多种操作系统上使用,包括 Windows、Linux、Mac OS 等。这使得开发者可以使用相同的代码在不同平台上实现图形渲染,大大降低了开发成本。 高性能:OpenGL 充分利用了图形硬件的加速能力,通过与显卡驱动程序的紧密配合,可以实现高效的图形渲染。它支持硬件加速的功能,如纹理映射、光照计算、抗锯齿等,可以快速生成高质量的图形。 可扩展性:提供了丰富的扩展机制,允许开发者利用显卡厂商提供的特定功能。这些扩展可以用于实现更高级的图形效果,如曲面细分、几何着色等,以满足不同应用场景的需求。 4. 应用领域 游戏开发:是游戏行业中广泛使用的图形渲染技术。开发者可以使用 OpenGL 创建逼真的 3D 游戏场景、角色动画、特效等。例如,许多经典的 PC 游戏和移动游戏都使用 OpenGL 来实现高质量的图形显示。 计算机辅助设计(CAD)和建模:在 CAD 软件中,OpenGL 用于渲染 3D 模型,使设计师能够直观地查看和编辑设计对象。它可以精确地显示模型的几何形状、表面纹理、光照效果等,提高设计效率和质量。 虚拟现实(VR)和增强现实(AR):随着 VR 和 AR 技术的发展,OpenGL 在这些领域也发挥着重要作用。它可以为 VR 和 AR 应用创建沉浸式的 3D 环境,实现用户与虚拟对象的交互。 科学可视化:在科学研究中,经常需要对复杂的数据进行可视化处理,如分子结构、天体物理模型、医学图像等。OpenGL 可以将这些数据以直观的 3D 图形形式呈现出来,帮助科学家更好地理解和分析数据。 5. 与其他技术的关系 与 GLUT(OpenGL Utility Toolkit):GLUT 是一个用于创建简单 OpenGL 程序的工具库,它提供了一些基本的功能,如创建窗口、处理用户输入、简单的菜单等。GLUT 可以帮助开发者快速搭建 OpenGL 应用的框架,专注于图形渲染的实现。 与 Shader(着色器):着色器是现代 OpenGL 中非常重要的组成部分。它允许开发者使用一种类似于 C 语言的编程语言(如 GLSL - OpenGL Shading Language)来编写顶点和片段处理的程序,从而实现更加灵活和定制化的图形效果。通过使用着色器,开发者可以控制图形管道中各个阶段的计算,实现独特的光照模型、材质效果、动画等。 使用方法 这是底层API库,一般是给其它库调用的,我们不需要直接调用它 具体使用方法等以后再出教程。
2026年-1月-21日
66 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_MyFbFramework(跨平台界面库)
这是一个跨平台的界面库,新建工程时,选择这个库即可。 这里没有为此专门写一篇说明。
2026年-1月-21日
79 阅读
0 评论
VisualFreeBasic编程文档
2026-1-21
VisualFreeBasic内置库_C语言标准函数库
C语言标准函数库里的函数比较多,都是C语言里常用的函数。 里面的函数,大多不需要引用库,就能直接使用,就当成是自己的函数。 这里就没必要对函数说明,需要的同学,可以百度搜索C函数说明 假如编译提示没定义,就需要引用库文件了 每个函数,都提示需要引用什么库文件。 总之,大多数直接用,遇到未定义,就引用库文件。
2026年-1月-21日
60 阅读
0 评论
VisualFreeBasic编程文档
17
18
19
20
21