【发布时间】:2009-09-06 13:18:30
【问题描述】:
有在可可应用程序中使用 webkit 视图来实现可换肤内容的教程,但是如果我想使用 webkit 来创建自定义的、可换肤的windows,我该怎么办?
例如仪表板小部件,或 BowTie
小心,我是菜鸟。
【问题讨论】:
标签: cocoa webkit skinning skin
有在可可应用程序中使用 webkit 视图来实现可换肤内容的教程,但是如果我想使用 webkit 来创建自定义的、可换肤的windows,我该怎么办?
例如仪表板小部件,或 BowTie
小心,我是菜鸟。
【问题讨论】:
标签: cocoa webkit skinning skin
我从未尝试过,但我认为您只需将 WebView 设置为透明无边框窗口的内容视图,并告诉 WebView 不要绘制背景。这样,WebView 的内容将定义窗口边界。
您可以通过将 NSBorderlessWindowMask 传递给 NSWindow 的 -initWithContentRect:styleMask:backing:defer: 方法来创建一个无边框窗口,并且可以通过调用 [window setBackgroundColor:[NSColor clearColor]] 将其背景设置为透明。
您必须自己处理窗口等的拖动。可能会有点乱。
说实话,作为第一个 Cocoa 项目,我不会尝试这样做。
【讨论】:
[webView setDrawsBackground:NO];