这个真的很临时,Lazarus 中文输入法的本质问题是其代码编辑窗口使用的SynEdit控件在 Linux 操作系统下的处理逻辑问题。目前可以通过以下步骤解决不能输入的问题: 1、进入工具菜单中的配置构建 Lazarus 选项。 2、在弹出的对话框中,选择目标操作系统 Linux,目标 CPU x86_64。 3、选择
分类: Delphi
[教程]Delphi 中的匿名函数详解
Delphi 支持匿名函数已经很久了,在以前的文章中,我说过,Delphi 的匿名函数实际上是一个接口,当然这个接口是没有接口的GUID的。那么 Delphi 是如何动态生成这个接口类型的呢?我们以一个实际的例子和接口在内存中的布局来详细说明下: 1、首先,接口三大金刚(AddRef/Release/QueryInte
祝大家新年快乐,虎虎生威,事业有成,家庭幸福安康
QDAC 感谢大家过去一年的不离不弃,希望与您新一年共创辉煌!
[教程]程序保存数据的防断电处理策略
虽然现代社会,电力供应没有那么紧张,但每年因为线路或计划检修等原因,正常和非断电的情况还是有的。另外,室内电源接触不良,掉落等因素也会出现异常断电的情况。如果在此时,恰好数据写入一半,就可能造成程序数据写入异常,下次程序启动时,如果调用这种数据就可能出现某些非预期的错误。 实际上解决这类问题,有一个简单的策略: 1、将
[教程]TWICImage 创建灰度图像拷贝
啥也不说,两句代码: ATargetImage 里存的就是原始图像的灰度图像了.
[付费]数据集内容输出 JSON 格式数据
嗯,这是一个试验性的收费产品,它是做为 TQJsonOutputChannel 的附属品存在的,信赖于 qjson_output_channel 单元,提供数据集转换为 JSON 数据内容的格式化输出支持。收费标准定为 200 元,含源码、示例和用法一对一指导。 【使用方法】 一如既往的简单,直接引用 qjson_da
[教程]使用 TQJsonOutputChannel 写入 JSON 数据到流中
TQJsonOutputChannel 的主要作用是用来快速写入大型的 JSON 数据到文件中,所以整体是面向写入过程设计的,不要试图用它来控制内容的修改。 假设我们要将数据内容写入到目标数据流 AStream 中: 第一步:我们需要定义一个 IQJsonStreamEncoder 的实例,它是一个结构体,所以直接在栈
[教程]使用 TQJsonInputChannel 来重复获取 JSON 对象
TQJsonInputChannel 是 QJson 新增的对象,目的是解决连续的JSON序列读取和超长的JSON数据内容读取处理的问题。 【基本步骤】 1、根据源的编码,创建对应的序列对象并设置相关事件: 2、从源中读取一块数据,然后推到 TQJsonInputChannel 实例中,不需要关心读取的块是否完整,TQ
[荐]DDNRuntime:Delphi 调用 .NET 库工具
DDNRuntime是一个用Delphi调用.NET的库。支持调用C#、VB.NET编写的程序集。支持自动导入.net dll,并创建.net接口。 官方QQ群:712048702 特性 不需要COM的支持。 支持.NET Framework和.NET Core Runtime 使用非常的简单,只需要在Delphi中申
[教程]使用平板控制远程PC时Linux被控端匹配平板分辨率
[测试平台] 1、平板:华为 MatePad Pro 12.6 +No Machine NX Player 6.1.9,物理分辨率2560×1600,设置适应客户端分辨率 2、被控端:Deepin Linux 20.2.4+No Machine NX 7.6.2,外接显示器位于 DP-1 ,原始分辨率 344
[译]RAD Studio 11 更新说明
原文链接:官方文档 官方ISO下载 Bug修复列表 注:本文为简译 IDE 高DPI支持 IDE 所有窗口都支持高 DPI 了,解决了高 DPI 缩放造成的模糊问题,有高分显示器,而且使用高 DPI 的开发者值得一试 VCL 窗口设计器支持定制 DPI(自动/96/自定义)缩放,FMX 本来就支持高 DPI 缩放 Op
[杂谈]OpenHarmony 路线图
这是在一篇文章中看到的,供大家参考: 目前知道的是,2.2 已经发布比原计划晚了一些,全力准备 3.0 版。早期的路标规划参考下图,传言接下来全力冲向3.0版本了,那将是一个值得纪念的版本:
[教程]修复 TNetHttpClient Windows 下Header 中包含UTF8编码字符时乱码的问题
[修复思路] 将编码转换回 ACP,然后再用 UTF-8 编码转换回来。 [修复代码] 如果引用 QString 单元,则直接 QString.Utf8Decode(PQCharA(QString.AnsiDecode(Value)),-1) 转换下就可以。 [问题原因] 该问题是由于 Windows 的 WinHtt
【杂谈】鸿蒙 OS 对开发人员带来的机遇和挑战-挑战篇下
【挑战4】鸿蒙会不会获得大量软硬件厂商的支持?答案:会理由:(1)硬件方面:对于国内的物联网厂商来说,这是一个巨大的机会。原来各自为战的状态,急需一个从底层协议统一的平台支撑。而目前能够实现这一点的,而且让大家信得过的,也只有华为一家。目前市面上的协议,还有米家杂货铺和 各个厂商各自为政,互联互通都成问题,这对大家购买
[杂谈]鸿蒙 OS 对开发人员带来的机遇和挑战-挑战篇上
鸿蒙 OS 2.0 正式发布了,对我们这些软件开发人员来说,它能带来那些机遇和挑战呢? 【挑战1】鸿蒙会不会成为一款优秀的操作系统?答案:会理由:就鸿蒙 OS 2.0 的情况来看,显然说它会成为一款优秀的操作系统是不需要质疑的东西。1、鸿蒙本身所占的体积要比 Android 小不少,相比 Android 手机,用户实际
【教程】对 TEvent 的一处增强
对于 TEvent 来说,如果是调用 WaitFor 等待超时时,如果程序退出时,事件仍在等待状态,就需要等待超时才能退出,造成程序退出时等待很长时间。要改进这一点,我们需要新版的 QWorker,它实现了一个 TAbortableEvent 的记录类型,然后支持取消操作。 TAbortableEvent 的增强在于:
[教程]如果在 Delphi /C++ Builder 中调试单元初始化时的错误
有时候,我们程序在进入 Main 函数入口前,就开始报错,比如 Acesss volation at XXX read at yyyy 一类的错误。这类错误一般是由于单元之间的引用关系和初始化顺序不一致造成的。比如单元 A 的初始化代码调用了单元 B 的函数,但单元 B 此时尚未初始化,所以其使用到的一些全局或静态变量
[教程]使用 TEdgeBrowser 组件
仅供有兴趣的朋友们参考,步骤有点小复杂。 1、下载 nuget。 2、在命令行执行:nuget install Microsoft.Web.WebView2 3、从微软官方下载 Webview 2 运行时。 4、在 nuget 目录下,搜索对应架构的 webview2loader.dll 并复制到你程序目录下,然后运行
[教程]QJSON 如何生成数组类型JSON数据
目标样式:[{“a”:123}, {“b”:123}, {“c”:123}] 首先,我们来看它的层级,第一层是一个数组,第二层为一个对象,所以,使用 QJSON 生成时,也就是下面的形式了: 最终生成的结果就如上面一样。如果遇到需要转义中文字符的场
[教程]VCL 中 TScrollBox 的一处 Bug 简单处理
TScrollBox 如果在设计时,滚动条的位置没有初始化到最开始的位置,或者不小心动了,可能就会存在特定的元素显示不出来的情况,此时,如果不考虑修改 VCL 源码,可以调用 ScrollInView 将最边缘的元素滚动到可视区,然后再设置对应滚动条的位置为 0 来解决。当然最根本的还是官方修复。