Bootstrap

macOS 桌面悬浮窗口

开发一个 macOS 桌面悬浮窗口(类似悬浮工具条、任务管理器等)可以使用 macOS 的 AppKit 框架,通过配置窗口属性,使窗口始终显示在其他应用窗口的上方。以下是开发的详细步骤:


关键点

  1. 窗口类型

    • 使用 NSWindow 创建悬浮窗口。
    • 将窗口设置为浮动窗口,使其始终显示在其他窗口上方。
  2. 窗口样式

    • 使用 NSPanelNSWindow 的子类),它比普通窗口更适合悬浮用途。
    • 禁用窗口标题栏、关闭按钮、最小化按钮等,只保留悬浮的内容部分。
  3. 拖动功能

    • 让悬浮窗口支持鼠标拖动。
  4. 透明背景

    • 配置窗口支持透明背景或自定义形状。

开发步骤

1. 创建项目
  • 在 Xcode 中选择 macOS 应用程序模板(App)。
  • 设置项目名称,并选择 Swift 或 Objective-C 作为语言。

2. 创建悬浮窗口

在项目的主类(通常是 AppDelegate 或 SceneDelegate)中,创建一个自定义窗口。

Swift 示例代码:
import Cocoa

@main
class AppDelegate: NSObject, NSApplicationDelegate {
   
    var window: NSWindow!

    func applicationDidFinishLaunching(_ notification: Notification) {
   
        // 创建窗口
        window = NSPanel(
            contentRect: NSRect(x: 200, y: 200
;