【挑战4】鸿蒙会不会获得大量软硬件厂商的支持?答案:会理由:(1)硬件方面:对于国内的物联网厂商来说,这是一个巨大的机会。原来各自为战的状态,急需一个从底层协议统一的平台支撑。而目前能够实现这一点的,而且让大家信得过的,也只有华为一家。目前市面上的协议,还有米家杂货铺和 各个厂商各自为政,互联互通都成问题,这对大家购买
[杂谈]鸿蒙 OS 对开发人员带来的机遇和挑战-挑战篇上
鸿蒙 OS 2.0 正式发布了,对我们这些软件开发人员来说,它能带来那些机遇和挑战呢? 【挑战1】鸿蒙会不会成为一款优秀的操作系统?答案:会理由:就鸿蒙 OS 2.0 的情况来看,显然说它会成为一款优秀的操作系统是不需要质疑的东西。1、鸿蒙本身所占的体积要比 Android 小不少,相比 Android 手机,用户实际
[教程]在 Deepin Linux 20.02 下使用英菲克M1BS三模蓝牙鼠标
直接在设备自带的设置里,选择蓝牙连接没有反应,需要手工操作: 1、打开终端,输入 sudo bluetoothctl 进入蓝牙控制台。 2、鼠标模式切换到蓝牙 5.0 模式(单按【模式切换键】切换到蓝牙 5.0 模式,然后长按 3 秒,看指示灯快闪后松开) 3、在蓝牙控制台,输入 devices,找到鼠标对应的设备Id
[杂淡]关于鸿蒙操作系统的一些个人观点
以下观点仅代表个人立场,可能并不一定准确,仅供参考。 1、鸿蒙首先必需承认它是一个全新的操作系统,但它也是建立在无数前辈的基础之上的,所以将它与其它操作系统隔裂的任何做法,都是不正确的。 2、鸿蒙底层是不同的操作系统内核,然后在内核上层加了一个抽象层,将操作系统的内核功能抽象出来,从而使上层应用达到与操作系统内核无关的
【教程】对 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 来解决。当然最根本的还是官方修复。
[分享]一种将 Delphi 组件属性信息保存到JSON的方法
此代码支持 Delphi 2007+,使用 QJSON 做为序列化的支持库。你可以自己改为使用其它的 JSON库(注:此文写法未完善,仅为示意)。 使用示例: 如上面的示例,由于写成了 class helper,所以保存到 Json 里,直接调用组件实例的 SaveToJson 就可以了,而从 Json 中恢复则直接调
Linux 下使用虚拟系统管理器创建 Windows 的 KVM 虚拟机
1、使用 raw 还是 qcow2 的问题:如果不考虑快照的问题,raw 性能更好。如果你对快照啥的很关心,就需要选择 qcow2。 2、客户机驱动:优先使用 virt-io,但显卡目前如果客户机操作系统是 Windows,只能选择 qxl (驱动暂时不支持)。驱动下载地址(使用迅雷下载,国外网址,下载速度慢):官方最
[Bug] Delphi System.Net.HttpClient.Win 单元的一处Bug
[问题函数]System.Net.HttpClient.Win.ReadHeader[影响版本]自有这个单元开始到10.4,包括打完最新的 patch3。[问题描述]WinHttpQueryHeaders 返回 LSize 如果等于 2,则 SetLength 得到的结果是将 Result 设置对应的字符串缓冲区被设置
[杂谈]Delphi 10.4 初体验
一句话:体验就可以了,正式产品的迁移请静等下一个版本。
[译]RAD Studio 10.4 新变化:新的 TEdgeBrowser 组件
原文链接 新的 TEdgeBrowser 控件支持微软新的基于 Chromium 核心的 Edge 浏览器。当然了,要使用要求你机器上安装了 Edge 浏览器(Windows 7+)。老的 TWebBrowser 增加了一个 SelectedEngine 来选择使用老的 IE 核心还是新的 Edge 核心。
[译]RAD Studio 10.4 新变化:面向控件的 VCL 样式管理
原文链接 本文为简译 一句话概括:可以同时选中多个样式,然后设置控件的 StyleName 属性来使用某个样式。 例如: object Form2: TForm2 StyleName = ‘Sky’ object Panel1: TPanel StyleName = ‘Light’ object Button1: TB
[译]RAD Studio 10.4 新变化:GetIt 包管理器增强
原文地址 本文为简译 10.4 的 GetIt 包管理器在以下方面增强: 加入日期排序支持,可以在最前面查看最近的项目 对于安装的项目,在更新可用时显示一个标记 能够列出全部需要更新的已安装项目 支持 IDE 补丁安装
[译] C++ Builder 10.4 新变化:重新设计的 Windows 64 位调试器
原文链接 本文为简译 C++ Builder 10.4 重新设计了基于 LLDB 的 64 位编译器(换句话说,32位就那样吧,不再玩了),它支持了 STL 和其它复杂类型。 新的 Debugger 的特色: 通过使用一个 LLDB v9 的定制版本来支持 Windows 64 位调试 业内首家支持 Windows 下
[译]Delphi 10.4 新变化:定制拖管记录(结构)类型
原文链接 此文为简略翻译,更详细内容请访问原文。 现有的 Delphi 中的记录如果包含复杂类型,如接口、动态数组等初始化和记录的赋值都是由 Delphi 默认提供的过程完成的,10.4 允许用户定制这些操作,只要用户实现对应的函数就可以。 初始化函数, 重载类操作 Initialize 清理函数,重载类操作 Fina
[译] Delphi 10.4 新变化:重新设计的 Code Insight
原链接 此文为使用 DeepL 机翻并进行了略微的调整。 在10.4中,我们重新实现了代码完成和其他功能,这是IDE十年来最重要的变化之一。 什么是 Code Insight 首先是一些背景。如果你对Code Insight很熟悉,请跳过前面…… Code Insight 是我们对编辑器中的一组 IDE 生产力功能的命
[杂谈] 从 Windows 10 到 Linux
自从最近一段时间,我笔记本自带的 Windows 莫名其妙的越来越慢后,已经严重影响自己开发的心情。在找不到什么原因的情况下,决定尝试在 Linux 跑下,看看是不是我的笔记本硬件已经跟不上 Windows 10 更新的步伐。所以,我先下载了 LinuxLite,这个发行版最大的好处是内核更新的比较快,然后使用其中的