在Cocoa / AppKit中,从给出一个屏幕[NSScreen screens],我如何确定在该特定屏幕上是否正在运行全屏应用程序?我对使用Cocoa API进行全屏显示的应用程序最感兴趣,但是如果有一种解决方案还包含其他类型的全屏显示应用程序,则更好。该解决方案需要能够通过Mac App Store批准。
我的特定用例涉及一个菜单栏应用程序(NSStatusItem),并弄清楚是否完全显示了菜单栏[NSScreen mainScreen],以便允许全局键盘快捷方式在状态项(如果可见)上显示弹出框的位置,或在其上浮动窗口,如果没有可见的状态项。
NSScreens本身似乎没有公开有关Windows /应用程序的任何信息,NSRunningApplication也没有公开此信息。
也许有Carbon API可以找到答案吗?例如,如果我有一个窗口列表,则可以遍历它们,查看是否有任何窗口框架与屏幕框架完全匹配。另一方面,可能有一些具有类似框架但在其他应用程序下运行的应用程序(例如Backdrop应用程序,https: //itunes.apple.com/us/app/backdrop/id411461952?mt =12),因此这样的方法需要查看窗口级别。
我刚刚开始学习JavaScript,在我的项目中,我发现无论何处使用表单,都可以使用AJAX.
一个简单的例子是:
<form id="demo_form" action="demo" method="post">
<input type="text" name="username">
<input type="submit" value="Submit">
</form>
Run Code Online (Sandbox Code Playgroud)
而ajax可以像这样使用:
$('#demo_form input[type="submit"]').click(function(){
$.ajax({
type: "POST",
url: "/demo",
dataType: "text",
data: {
username: $('#demo_form input[name="username"]').val()
}
});
});
Run Code Online (Sandbox Code Playgroud)
ajax的一个优点是它可以是异步的,我发现它真的很甜,因为你在等待服务器的响应时仍然可以做其他事情,并且可能保留当前页面并且不会丢失你的输入.(当我提交表单,我必须将所有输入传输到服务器并再次返回到界面,然后丢失它们.
由于表格现在仍然使用和流行,我想它有一些我不知道的优点.
ajax ×1
appkit ×1
cocoa ×1
forms ×1
fullscreen ×1
javascript ×1
jquery ×1
macos ×1
objective-c ×1