<分区>
如果这不是这个问题的合适论坛,我深表歉意 - 但我正在寻求开发一个应用程序,它将自身传播到多个显示器(不是在多个显示器上复制相同的图像,而是 1 个图像填充 4 个显示器) .我更喜欢用 as3/php/javascript 编写它,但如有必要,会考虑使用 C# 之类的东西。有没有人有任何入门技巧?该平台可以是 PC 或 MAC,但如果有一些开箱即用的软件可以促进将软件投影到多台显示器上,那就太好了。
<分区>
如果这不是这个问题的合适论坛,我深表歉意 - 但我正在寻求开发一个应用程序,它将自身传播到多个显示器(不是在多个显示器上复制相同的图像,而是 1 个图像填充 4 个显示器) .我更喜欢用 as3/php/javascript 编写它,但如有必要,会考虑使用 C# 之类的东西。有没有人有任何入门技巧?该平台可以是 PC 或 MAC,但如果有一些开箱即用的软件可以促进将软件投影到多台显示器上,那就太好了。
最佳答案
笼统的回答,希望对您有所帮助。
您可以使用 AIR 在不同显示器上部署具有多个窗口的应用程序。通过使用多个窗口,您将不会受到 8191 像素宽度上限的限制。在我看来,这是一种比一个跨多个显示器的大窗口更好的方法。
使用 Screen类,您可以访问有关系统上当前可用的监视器的信息。此类允许您获取当前可用屏幕的数组 Screen.screens
以及屏幕边界 screen.bounds
甚至有一个包装器类可以使这个过程更容易一些:
http://www.joristimmerman.be/wordpress/2009/03/03/screenmanager-expand-your-air-application/
使用这个类看起来很简单
ScreenManager.openWindowCenteredOnScreen(new window, screen number);
它看起来还有其他一些对您的情况有用的方法
ScreenManager.stretchWindowToAllScreens() //would be limited by the stage size cap
ScreenManager.openWindowFullScreenOn()
您可以使用 screen.visibleBounds
在创建新窗口时获取正确的尺寸信息。
然后您可以使用 NativeWindow在另一个显示器上创建并打开一个新的应用程序窗口。此代码应该可以帮助您入门
var window:NativeWindow = new NativeWindow();
var content:Sprite = new Sprite(); //a container for some display objects to appear inside your new window
window.stage.addChild(content); //adding the content to the new window;
window.activate();
使用此工具,您将能够创建 4 个窗口,每个窗口一个,并为每个窗口附加不同的图像。您还可以将这些屏幕中的每一个设置为每个显示器的全宽和全高。
关于javascript - 开发分布在多个显示器上的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10416072/