问题标签 [monomac]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何在 MonoMac 中制作仅托盘图标的 C# 应用程序(无停靠图标)?
我正在尝试创建一个只有托盘图标而不出现在任务栏中的应用程序。(类似于 Dropbox)我需要创建应用程序的 Windows 和 Mac 版本,所以我尝试使用 MonoMac 创建 Mac 前端。
在 MonoMac 中创建仅托盘应用程序的最佳方法是什么?
我发现的所有资源都说要做两件事之一:
- 添加
<key>LSUIElement</key><string>1</string>
到Info.plist
文件中。 - 将以下代码添加到类中的
FinishedLaunching
事件中AppDelegate
:NSApplication.SharedApplication.ActivationPolicy = NSApplicationActivationPolicy.Accessory;
我已经尝试了这两者的所有组合,但似乎一旦我尝试实例化 C# System.Timers.Timer
,图标就会重新出现在屏幕底部的 Dock 中。我是否遗漏了有关 OSX 如何处理后台应用程序的信息?
我究竟做错了什么?有没有更好的方法来制作一个在 OSX 中具有上部托盘图标但没有底部停靠图标的后台应用程序?
(这与这个SO question非常相似,但这个问题是几年前提出的,从未得到完全回答,所以我希望那里可能有更完整的答案。)
这是我到目前为止的代码:
c# - 调试文件 WriteAllText
我创建的小实用程序构建得很好。但是当我去保存文件时,我得到一个调试异常:
System.UnauthorizedAccessException 已被抛出,访问路径“/文件夹/文件被拒绝。
我试图将文件写入到的位置通常需要身份验证,但是当我单击保存时,我的实用程序不会要求它。我该如何解决这个问题?
monomac - MonoGame 示例未在 Mountain Lion 上编译
所以我安装了 MonoFramework、MonoDevelop 和 MonoMac 并下载了最新版本的 MonoGame。我尝试编译示例,但它们都因相同的错误而失败
Parsing error of #error Unknown platform
。
问题似乎是由于某种原因#if MONOMAC
而#elif MONOMAC
被忽略了。
如果我删除了 Windows、XBOX 和 Linux 相关代码并摆脱了#if MONOMAC
编译和执行的代码。是否发生了变化,我是否应该在平台检查中使用其他东西而不是 MONOMAC(我尝试过__APPLE__
但MAC
都没有成功)。
先感谢您。
f# - MonoDevelop 的 F#/MonoMac 项目
如何在 MonoDevelop 中创建 F# Monomac 项目?两人在一起的事,我好像也查不出来。
c# - MonoMac 中的子类 NSApplication
我需要在 MonoMac 中继承 NSApplication 以覆盖 NSApplication 的 sendEvent(C# 术语中的 SendEvent)方法,以便接收媒体键事件(Macbook 上的 Play、Pause、Next、Prev),如下所述:Listening to mac keyboard play/pause events在这里:https ://bitbucket.org/nkreeger/whitedragon/src/6f530c8a34a7/component/sbAppleMediaKeyController.mm
到目前为止,我想出了这段代码:
但是没有调用 SendEvent 或 SetMainMenu(我出于测试目的添加了它,因为在启动时应该调用一次 SetMainMenu),因为我没有得到任何控制台输出。
这样做的正确方法是什么?
mono - 为什么 NSScreen.screens 可能使用 MonoMac 返回 null 的原因?
我正在使用 Mono/Monomac 框架与本机 Mac 库进行一些互操作。一般来说,它运作良好,但现在我需要找到屏幕分辨率。Monomac 已经为 NSScreen 定义了必要的导入。
不幸的是,NSScreen 上的所有属性(Screens、MainScreen 和 DeepestScreen)都返回 null。我倾向于相信它们根本没有工作,但我似乎在 MonoDevelop 的源代码中引用了它们,所以我很可能忽略了一些东西。完整性的代码示例(抛出异常):
我也尝试过IntPtr scrRef = objc_getClass("NSScreen")
,在这种情况下,scrRef
最终也为空(嗯,IntPtr.Zero)。巧合还是线索?
编辑:在 OSX 10.7.4 上存储 Mono 2.10.9
cgcontext - 如何在 MonoMac 中填充图案
有谁知道如何在 MonoMac 中填充模式,不幸的是,这段代码什么也没做。它甚至不调用绘图模式。任何帮助都会很棒:D
}
visual-studio - 调试使用 Visual Studio 构建的 Monomac 应用程序
Monodevelop 是否允许调试使用 Visual Studio 构建的 .net 程序集(即具有 .pdb 符号而不是 .mdb 符号的程序集)?
如果是这样,在源代码级调试期间如何定位源文件?
这对于允许在 Windows 上构建通用程序集并在多个平台上使用非常有用。
c# - 从 CoreData 模型生成类
我正在尝试开发一对 C# 应用程序,一个 iOS,一个 Mac,它们使用相同的 CoreData 数据库。实际上,桌面应用程序填充它,然后它作为 iOS 应用程序的一部分分发。
我可以使用 XCode 生成一个.xcdatamodeld
文件,描述我希望数据库的外观。我可以用它momc
来编译成一个.momd
文件。我可以将其中的.mom
文件包含到我的 Mono 项目中,然后将其加载到 aNSManagedObjectModel
中,从中我可以访问各种实体的所有属性。
我还没有弄清楚如何从数据库中创建一个类的对象,而不是访问表的属性。有什么建议么?
澄清一下:我希望能够在 XCode 中创建一个表/类,调用它Person
。我给它两个字段:Name
和Phone
. 我希望能够在 Mono 中运行与此类似的代码:
显然,从数据库中获取它并将其保存回来的细节会有所不同,但要点就在那里。
c# - MonoMac 上的本机发布错误,可能与事件有关
MonoMac 似乎在事件下泄漏对象,我的日志显示:
但这并不能告诉我太多关于泄露的内容。任何人都知道我如何弄清楚哪些对象正在泄漏?