位运算、符号扩展和字节序
最近编码遇到一个问题,在读写相关的工具方法只支持ByteArray的前提下,如何保存和读取一个Long类型列表。这个问题看上去简单,但解决过程中却走了一些弯路,正好也回顾了一下相关的知识。
Compose/Wasm支持中文显示
Compose很好玩,但他的Wasm编译目标默认是无法显示中文的,怎么解决呢?
Kotlin的SAM转换和踩坑
只有一个抽象方法的接口被称作函数式接口,或者单抽象方法(SAM)接口。函数式接口应用广泛,我们常见的Runnable、View.OnClickListener等都是函数式接口。
实现一个俄罗斯方块游戏
俄罗斯方块是最经典的小游戏了,不实现一下怎么能证明我是个合格程序员
C++中的PIMPL封装技术
C++的头文件存在设计缺陷,你不得不在头文件中把类的私有成员变量和方法定义也写出来,这显然不符合接口实现原则,那么怎样更好地封装接口呢?
WxWidgets给窗口添加一个图标
WxWidgets给窗口添加一个图标
Windows下安装wxWidgets并编写一个Hello World
之前尝试用Compose Desktop通过Win32 Api的方式实现了桌面管理工具,但是这个实现显然是很不环保的——Compose Desktop现阶段打包还需要带上JVM,带来惊人的包大小增长和较慢的执行速度。因此,我又开始尝试写一下其他UI框架的Hello World,今天是wxWidgets。
实现一个桌面管理工具
最近换了Windows后,开始怀念起曾经用过的壁纸管理软件。大名鼎鼎的fences价格一百多,臭名昭著的小鸟壁纸倒是免费,但我可不敢把这位菩萨请到我电脑里来了。一时间,竟找不到合格的替代品,唯一看着有希望的Portals也是收费的,免费只能创建两个文件夹。所以我开始思考,一个这样的软件是如何实现的,我能否实现个简单的?
JNA调用Win32API
最近想做一个桌面管理工具,不可避免地需要用到很多Win32 API。那么,就从显示一个MessageBox开始吧。
使用Jetbrains的脚本(skia-pcak)编译Skia
前几天我尝试在Windows下编译了Skia并成功绘制了三角形,但是尝试绘制Hello World时并没有任何输出,我猜测是有字体相关的依赖(如fontconfig)没有处理好,而在Windows上安装并引入这些依赖好像有点太难了。一番查找发现JetBrains有个仓库用github的workflow编译Skia,这下问题简单了。