在Mac上围绕整个屏幕绘制红色矩形

Cot*_*ten 4 macos cocoa

有没有办法以某种方式在整个屏幕周围绘制红色“边框”?我不想在应用程序的窗口内绘图。我希望在显示红色边框时能够使用其他程序。

我想真正向用户发出信号,表明计算机处于特殊模式。

CRD*_*CRD 5

Windows 不需要是不透明的,并且可以设置为忽略鼠标事件,使用它可以很容易地执行您想要的操作。概要:

a) 使用drawRect:方法创建一个NSView子类,该方法在其框架内绘制半透明(< 1 alpha值)红色边框。

b) 创建一个 NSWindow 子类。使用 NSBorderlessWindowMask 作为样式。将backgroundColor设置为clearColor,将不透明设置为NO,将level设置为适合您的东西 - 比如NSScreenSaverWindowLevel,将ignoreMouseEvents设置为YES,canHide设置为NO,等等。将窗口大小/位置设置为(您的一个)屏幕。将其 contentView 设置为 (a) 中的视图。

您现在有一个“窗口”,它只是一个轮廓半透明的红色矩形,创建一个,您的屏幕将根据您的意愿勾勒出轮廓。