可以在AIR应用程序运行时禁用Windows开始菜单吗?

时间:2014-12-07 17:00:12

标签: actionscript-3 flex air flex4

我想我知道答案(没有),但我想我会问:

AIR应用程序运行时是否可以禁用Windows开始菜单?

我正在修改的遗留应用程序需要在屏幕大小的"窗口中运行"模式,以便访问本机菜单系统。有一些按钮靠近屏幕的底部边缘,很容易触发开始菜单滑动。

我知道我可以,也许应该重做菜单以使用Flex组件并运行全屏(开始菜单显然已禁用),但预算紧张。

1 个答案:

答案 0 :(得分:1)

我认为这只能使用外部软件。

为此,我们需要:

为此,我编写了这段代码来完成这项工作。

在应用开始时,我隐藏了Windows开始按钮,退出应用时,我会显示它。

<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
                       xmlns:s="library://ns.adobe.com/flex/spark" 
                       xmlns:mx="library://ns.adobe.com/flex/mx" creationComplete="init(event)">

    <fx:Script>
        <![CDATA[

            import mx.events.FlexEvent

            private const exe_name:String = 'StartKiller.exe'
            private var native_process_startup_info:NativeProcessStartupInfo
            private var exe_file:File = File.applicationDirectory.resolvePath(exe_name) 
            private var process:NativeProcess
            private var process_args:Vector.<String> = new Vector.<String>()            

            protected function init(event:FlexEvent):void
            {
                // run our exe to hide start button
                native_process_startup_info = new NativeProcessStartupInfo()
                native_process_startup_info.executable = exe_file

                process = new NativeProcess()
                process.start(native_process_startup_info)

                NativeApplication.nativeApplication.addEventListener(Event.EXITING, function(e:Event):void{

                    // exit our exe and show start button
                    native_process_startup_info = new NativeProcessStartupInfo()
                    native_process_startup_info.executable = exe_file

                    process_args = new Vector.<String>()
                    process_args.push('exit')       

                    native_process_startup_info.arguments = process_args

                    process = new NativeProcess()
                    process.start(native_process_startup_info)

                })
            }

        ]]>
    </fx:Script>
</s:WindowedApplication>

如果您想在更改代码之前测试它,我也创建了一个安装,您可以下载它here

我希望所有这些都可以帮到你。