编程开发

macOS 键盘按键 event 的三种截获方式

一般情况下,你不需要了解这些内容。

在极少数情况下,你的app可能需要去获取用户按下的按键信息,比如盗号木马 开发一款输入法。只有这样你才能给用户提供候选。

怎么在 macOS 下创建一个输入法,我在Swift 使用 InputMethodKit 写输入法这篇文章中有详细的说明,这里略过[……]

点击跳转以继续阅读

winform 使用 视频 作为窗口背景

最近做 Windows 上的项目,客户要求要做的“炫”一点,所以,动态的窗口背景永远是必不可少的内容(比如手机qq的登录界面对吧?

我本以为这是一个很容易实现的功能于是就满口答应下来……是的,在 winform 里,并不是那么容易就能达到你想要的效果的。

理所当然,我们想到如果要播放视频[……]

点击跳转以继续阅读

Android 安卓开发板 读取串口

最近接了个工程,需求是给特制的工程安卓板子做串口读写以实现一些特定外接设备的互动——是的你没有看错,安卓板子也是可以有串口的!

很多做移动开发的朋友可能没接触过——其实在这之前我也没接触过。踩了七八个小时的坑,终于爬出来了,这里做一个总结,可能各个工程板子具体情况不同,大家一定要随机应变。[……]

点击跳转以继续阅读

多显示器下判断窗口位置 macOS

在开发落格输入法的时候,我遇到了这么一件事情,就是作为候选栏的窗口会在屏幕边缘的时候超出屏幕去!所以,在显示窗口的时候我根据坐标做了额外的检查:

总之,就是说如果坐标算上自己的宽度超过了屏幕的宽度,就把它挪回来。

但是,这样[……]

点击跳转以继续阅读

如何让 NSWindow 显示在不同的 Space 或者 Screen 中

在写落格输入法 Mac 版的过程当中,我遇到了这么一个问题,系统的候选条 API 年久失修,很多功能 API 存在但根本无效,比如:

这个方法是用来设置候选条风格的,里边除了默认的[crayon-662c023627b731103[……]

点击跳转以继续阅读

URL 遇到 中文字符 无法初始化

在 Swift 中,大家经常会用 URL 来初始化一个路径,比如网页的链接。比如这样:

当用户点击按钮(比如说这个帮助按钮),那么一下子就帮用户打开默认的浏览器,并打开指定的页面(这里是个论坛)。

那么,如果你的链接是这样的[……]

点击跳转以继续阅读

如何给服务器端做最基本的密码安全

做 app 做网站,难免要和服务器、后台、数据打交道,那么作为一名后台开发,当涉及到注册登录,你最应当想到的应该是用户的安全,尤其是密码安全。

现在安全界几乎天天都有某网站、某公司被脱裤,也就是整站的数据库被偷走被下载。那么你的用户数据全部落入了歹徒手中,应该怎么防范即使如此,歹徒也不能拿到用[……]

点击跳转以继续阅读