从Delphi到Lazarus——Lazarus编程时可以使用的组件(控件)

news/2024/12/4 14:38:55/文章来源:https://www.cnblogs.com/lexyao/p/18585923

0.前言

使用过可视化编程的人都知道在编程时组件的重要性。可以使用的组件越多,编程越方便快捷。

理论上,Delphi中的所有组件在Lazarus中都可以使用。当然,在Windows编程时多数是可以直接使用的,有些需要做适当的修改才能使用。而在Unix或Linux下编程就有些不能使用了,这涉及到操作系统内核的问题。不过,今天讨论的不是操作系统的问题,而是要告诉大家在Lazarus编程时可以使用哪些组件。

在这篇文章里将会介绍以下内容:

  1. 在Lazarus中创建一个小程序
  2. 使用Lazarus中已经集成的组件
  3. 使用Lazarus中没有安装的组件
  4. 使用网上提供的经过筛选的优秀组件
  5. 使用网上提供的第三方组件
  6. 使用自己的软件包

1.在Lazarus中创建一个小程序

在Lazarus中编写一个小程序的事情在其他文章中已经介绍过了,可能大家也都已经掌握了这个方法,我之所以还要在这里写上这一段,是因为这是下一步的基础。如果你觉得没有必要,可以跳过这一段。

在Lazarus中创建一个小程序的步骤如下:

  1. 主菜单:文件->新建…,打开[新建]窗口
  2. 在[新建]窗口中选择[项目->应用程序],然后点击[确定]按钮,一个名为Project1的小程序就已经创建完成了,这个程序只有一个窗体Form1。下图应该就是你在屏幕上看到了样子。
  3. 点击主菜单中的[运行->运行](或者点击工具栏中那个跟菜单里一样的绿色按钮,或者直接按快捷键F9),你会看到下部的消息栏中出现了正在编译的信息,编译完成后,你的程序就会运行,这时你会看到屏幕上出现了带有熊爪图标的Form1的窗口,这就是你编写的第一个程序Project1的窗口
  4. 关闭Project1的窗口,结束Project1的运行

 

2.使用Lazarus中已经集成的组件

你安装了Lazarus后,Lazarus已经安装的组件都在组件面板中(上图中的③),这些组件你可以直接使用。如果你已经通过安装组件形成了一体化的窗口组件列表中同样也会看到这些组件(上图中的④)。

关于Lazarus已经安装了的组件的介绍你可以点击这个链接看到:Lazarus Tutorial/zh CN - Lazarus wiki

使用Lazarus已经安装了的组件的步骤很简单:

  1. 在组件面板中找到你要使用的组件,点击这个组件,比如Standard中带有ok字样的那个方框,这是按钮TButton
  2. 点击Form1中你要放置这个组件的地方,你会看到你的组件已经添加到窗体Form1中了,一个名为Button1的按钮

运行你的程序,你会看到运行后的Form1窗口中比上一次多了一个标有Button1的按钮。点击按这个按钮,但它什么也没做。要想让这个按钮有用,还需要添加这个按钮的事件处理程序,这是另外一个问题了,这里不再讨论。

3.使用Lazarus中没有安装的组件

安装Lazarus时除了已经出现在组件面板中的组件,还有许多没有安装的组件。这些组件就在你的电脑中安装Lazarus的文件夹下的components文件夹中。

要想使用这些组件,你需要先安装你要使用的组件。操作步骤如下:

  1. 点击主菜单中的[软件包->安装/卸载软件包…],打开[安装/卸载软件包]窗口
  2. 在[安装/卸载软件包]窗口的[可用于安装]栏目中选择你要使用的组件所在的软件包,然后点击[安装选中的]
  3. 点击软件包安装/卸载窗口下边的[保存并重新编译IDE]按钮,按提示完成安装

具体的操作步骤你可以打开以下链接看一下我在另一篇文章中写的[3.安装整合IDE界面的软件包]的步骤,那里面有图文并茂的描述。

从Delphi到Lazarus——安装最新版的Lazarus - lexyao - 博客园

当然,当你选择使用这些组件的时候,你会感到困惑:怎么才能知道这些软件包里有没有我需要的组件呢?哪一个软件包是我需要的组件呢?

对于这个问题,我也没有找到很好的办法,只是发现在components文件夹下每个软件包所在的文件夹中都有一个README.txt文件,里面有这个软件包的简单说明。

你可以在网上百度一下,或许会找到更好的方法。

4.使用网上提供的经过筛选的优秀组件

Lazarus是开源的自由软件,其背后有一个团队为了维护这个软件在默默地付出。这个团队筛选了许多可用于Lazarus的组件的软件包发布在网上,你可以很方便地使用这个组件。

要使用这些组件,你还是需要先安装你需要的组件所在的软件包。安装的步骤如下:

  1. 点击主菜单中的[软件包->在线软件包管理器…],打开[在线软件包管理器]窗口
  2. 勾选你要安装的软件包左边的小方框选中这个软件包(下图中的①)
  3. 点击窗口下边的[安装],然后按提示继续后边的操作

完成以上操作后,等待软件包下载、安装、Lazarus重新编译,直到Lazarus关闭后重新运行,安装工作完成。

需要注意的是,安装的软件包中的组件有的是在组件面板的独立页面中,也有的是添加到已经存在的页面。如果实在找不到,你可以在右边的组件列表的查找中输入软件包中一个组件的名字,就会看到这个组件的所在的分组,也就找到了组件所在的页面。

另外,要想了解软件包的内容,在[在线软件包管理器]窗口中鼠标在一个软件包名字上悬停,会弹出一个窗口,其中有这个软件包的描述。也可以点击软件包前面的➕(下图中的②),展开隐藏的内容。展开的内容分为两列,你会在左边一列中看到有一项是[描述],这一行对应的右边一列中的内容就是这个软件包的描述(下图中的③),鼠标悬停在这个描述上,会在右边显示初一个有三个点的按钮[…],点击这个按钮也会看到描述的全部内容。

当然,不是所有的软件包中的描述都是完整的。

 

5.使用网上提供的第三方组件

Lazarus可以使用的组件,除了以上所说的几种情况,还有大量的第三方软件包。这些软件包之所以没有被Lazarus团队选中,可能是以下原因之一,或者其他未知的原因:

  1. 软件包存在缺陷
  2. 软件包不支持跨平台编程(包含平台依赖性的代码)
  3. 这个软件包不是同类中最优秀的
  4. Lazarus团队还没有认识到这个软件包中组件的重要性或者说优势
  5. 软件包有版权要求

不管什么原因,只要你能够从网上下载到你的电脑里,你都可以使用。

使用第三方软件包中的组件同样需要先安装软件包。安装的步骤如下:

  1. 下载第三方软件包的文件到你的电脑里。如果是压缩文件,解压到一个文件夹中
  2. 点击主菜单[文件->打开…],在你解压的软件包文件夹中找到并选中扩展名为lpk的文件,然后点击[打开]按钮,在弹出的提问窗口中选择[打开软件包],在弹出的[软件包]窗口中你会看到软件包中的文件
  3. 点击[软件包]窗口中的[使用->安装],然后按提示继续后边的操作

完成以上操作后,等待软件包下载、安装、Lazarus重新编译,直到Lazarus关闭后重新运行,安装工作完成。

需要注意的是,有些第三方软件包存在缺陷、代码错误等问题,需要你自己去发现、修改。你也可以把你发现的问题发送给软件包的开发者,让他修改后发布新版本的软件包。

6.使用自己的软件包

如果你已经具备了开发软件包的能力,你可以根据自己的需要开发自己的软件包。你开发的软件包可以自己使用,也可以公布到网上让大家共享。

当然,大多数人不是自己开发软件包,而是在现有软件包的基础上做一些改动,添加自己需要的功能。

至于你会怎么做,那要看你个人的能力、爱好、需求了。你说是不是这样啊?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/846664.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

# 20222309 2024-2025-1 《网络与系统攻防技术》实验7实验报告

1.实验内容 本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法。具体实践有 (1)简单应用SET工具建立冒名网站 (2)ettercap DNS spoof (3)结合应用两种技术,用DNS spoof引导特定访问到冒名网站。 2.实验过程 (1)简单应用SET工具建立冒名网站…

为什么许多项目经理根本无法实现数字化转型?你做对了吗?

在当今数字化时代,数字化转型对于项目经理而言至关重要。随着科技的飞速发展,企业越来越依赖数字化手段来提高效率、降低成本、增强竞争力。项目经理作为项目的核心领导者,其在数字化转型中的作用不可忽视。然而,当前许多项目经理却难以实现数字化转型,这一现象值得我们深…

项目经理必学的6个工具,这些知识能否帮你避免项目管理崩溃?

在当今复杂多变的商业环境中,项目管理的重要性日益凸显。项目经理作为项目的核心领导者,承担着确保项目成功的重大责任。他们需要协调各方资源,把控项目进度、质量和成本,以实现项目的既定目标。一个成功的项目不仅能够为企业带来丰厚的经济效益,还能提升企业的市场竞争力…

多籽西瓜

一斤的西瓜,八两的籽,哈哈哈哈哈哈,这运气也是没谁了🤣恭喜你发现了宝藏,听风看云,做个懒骨头~

你的团队是否也在为工作效率发愁?

为什么项目进度管理效率低下成为普遍问题?在如今竞争激烈的商业环境中,项目进度管理已经成为企业成功与否的关键因素之一。然而,许多企业和团队仍然面临着工作效率低下的问题,尤其在多任务、高复杂度项目的管理中。这种低效不仅影响了团队士气,还可能导致项目的延期、预算…

项目管理中的8个常见挑战及解决方案

项目管理是确保项目从启动到完成的过程顺利进行的艺术和科学。尽管项目管理方法和工具不断进步,但项目经理仍然面临许多挑战。这些挑战可能来自内部团队、外部环境或项目本身的复杂性。本文将探讨项目管理中的八个常见挑战,并提供相应的解决方案,以帮助项目经理更有效地应对…

疑问!广告公司的宣传利器软件是什么?

在当今竞争激烈的广告行业中,高效的团队协作是广告公司取得成功的关键。为了满足全 J 人广告团队协作公司的需求,我们将盘点六款令 J 人喜爱的适合大中小型团队协作办公软件,包括板栗看板以及国外的五款相关软件。这些软件将帮助广告团队提高工作效率、优化项目管理,并实现…

Xpath解析及其语法Zf

XPath解析XPath(XML Path Language)是一种用于在XML和HTML文档中查找信息的语言,其通过路径表达式来定位节点,属性和文本内容,并支持复杂查询条件,XPath 是许多 Web 抓取工具如 Scrapy,Selenium 等的核心技术之一XPath 解析的基本步骤导入lxml.etreefrom lxml import etree使用…

信息安全概论复习5

什么是防火墙?防火墙分类(四种分类:安全策略、网络体系结构、应用技术、拓扑结构)按安全策略分类(两种安全策略:不允许就禁止;没有禁止都是允许的)(两种网络服务访问权限策略:外部不能访问内部;外部只能访问内部的某些站点)按网络体系结构分类 (不同层对应不同的防…

20222314 2024-2025-1 《网络与系统攻防技术》实验五实验报告

20222314 2024-2025-1 《网络与系统攻防技术》实验5实验报告 1.实验内容 学习了信息搜集技术,包括但不限于ip反查,nmap以及其他软件的信息搜集功能 2.实验过程 (1)从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询,获取如下信息:DNS注册人及联系方式…

elastic8.4.0搜索+logstash-mysql实时同步+kibana可视化操作+netcore代码笔记

做全文搜索,es比较好用,安装可能有点费时费力。mysql安装就不说了。主要是elastic8.4.0+kibana8.4.0+logstash-8.16.1,可视化操作及少量netcore查询代码。 安装elastic8.4.0+kibana8.4.0使用docker-desktop,logstash-8.16.1是线程解压执行文件。1. docker-compose.yml 如下…

关于双JWT的流程记录

鉴权问题一直是个经典问题,从最初的cookie-session方案,到token方案,再到使用签名保证准确性的JWT方案一直到OAuth2.0,这里我在项目中对于原来的传统授权方式使用双JWT进行改造 为什么要使用双token 由于token的过期时间在token生成后就难以更改,所有token的过期时长不宜设置过…