AIR - 设置 NativeWindow 的大小以包括系统镶边

     2023-02-26     165

关键词:

【中文标题】AIR - 设置 NativeWindow 的大小以包括系统镶边【英文标题】:AIR - set size of NativeWindow to include system chrome 【发布时间】:2012-02-14 07:44:09 【问题描述】:

如何找出系统chrome的大小,以便我可以指定窗口大小以达到我想要的舞台大小?

如果我的主窗口设置为 800 x 600(舞台),并且我创建如下第二个窗口,它会更小。

public function Main():void 

    var windowOptions:NativeWindowInitOptions = new NativeWindowInitOptions();
    windowOptions.systemChrome = NativeWindowSystemChrome.STANDARD;
    windowOptions.type = NativeWindowType.NORMAL;
    var newWindow:NativeWindow = new NativeWindow( windowOptions );
    newWindow.width = 800;
    newWindow.height = 600;
    newWindow.stage.scaleMode = StageScaleMode.NO_SCALE;
    newWindow.stage.align = StageAlign.TOP_LEFT;
    newWindow.activate();


我假设您同时增加 newWindow.width = 800;newWindow.height = 600; 以说明 chrome,但是您如何找到这个值?

【问题讨论】:

【参考方案1】:

供参考,因为我觉得其他答案不够清楚。要将新窗口设置为所需的尺寸:

// first set the desired window dimensions to set the (smaller) stage dimensions:
newWindow.width = 1024;
newWindow.height = 768;

// then reset the window dimensions and add chrome dimensions:
newWindow.width = 1024 + (1024 - newWindow.stage.stageWidth);
newWindow.height = 768 + (768 - newWindow.stage.stageHeight);   

【讨论】:

【参考方案2】:

使用 NO_SCALE 创建 ActionScript 项目时,stage.stageHeight 和 stage.stageWidth 不能用于计算主应用程序窗口中的镶边,因为它们不会调整大小以符合内部宽度。您必须引用主窗口阶段。

要查找主窗口内部舞台的高度和宽度,您可以使用 stage.nativeWindow.stage 引用 stageHeight 和 stageWidth 属性来提供内部宽度。

例如对于 1280x720 所需的内部尺寸:

// width stage.nativeWindow.width = 1280 + (stage.nativeWindow.width -
stage.nativeWindow.stage.stageWidth);

// height stage.nativeWindow.height = 720 + (stage.nativeWindow.height
- stage.nativeWindow.stage.stageHeight);

【讨论】:

【参考方案3】:

您可以通过用内部尺寸(不包括镶边)减去窗口尺寸(包括镶边)来计算镶边的大小。

来自 NativeWindows 的 width 帮助:

为原生窗口报告的尺寸包括任何系统窗口 显示的铬。内部可用显示区域的宽度 Stage.stageWidth 属性提供了一个窗口。

所以可以用stage object(stage.stageWidth 和stage.stageHeight:)得到内部尺寸

因此:

var chromeWidth=newWindow.width-newWindow.stage.stageWidth;
var chromeHeight=newWindow.height-newWindow.stage.stageHeight;

【讨论】:

javafx编程问题

...rue">将mxml中mx:WindowedApplication改成mx:Application2、使用NativeWindow类NativeWindow类中有几个方法:1.maximize()最大化窗口2.restore()恢复最大化的窗口3.minimize()最小化窗口4.close()关闭窗口5.startMove()窗口的系统级拖拽6.startResize()窗口的系... 查看详情

nativewindow_01

1、  “{$O-}”关闭优化  “{$O-}”打开优化2、unitNativeWindow;interfaceusesWindows,Messages,SysUtils;procedureCreateWindow;implementationfunctionProcWindow(_hWnd:HWND;_uMsg:UINT;_wParam:WPARAM;_lParam:LPARAM):longin 查看详情

利用nativewindow监视wndproc消息(好像是一个字典,没搞明白)

http://blog.csdn.net/lovefootball/article/details/1784882在写Windows应用程序的时候,经常会碰到需要修改例如MessageBox或者FileDialog的外观此时我们需要监视WndProc的消息当然也可以直接调用API实现,具体方法请参考http://www.codeproject.com/csharp/GetS... 查看详情

Flex:中心窗口?

...问题描述】:我试图在flex中将启动的窗口居中,有一个NativeWindow.x和NativeWindow.y但flex使用没有这些属性的Window类,所以有人知道如何将窗口居中吗?谢谢!!【问题讨论】:【参考方案1】:我想通了:window.nativeWindow.x=(Screen.mainS... 查看详情

Flex 4.6 AIR 3.2 TextInput 工件

...应用程序中测试简单的TextInput功能,并在软键盘调整视图大小时观察到奇怪的伪影。这是外观:在弹出软键盘之前和之后。如您所见,Flex已调整视图大小,以便软kb与TextInput可见。但这会导致所有Text 查看详情

如何使用适用于 Android 的 Adob​​e AIR 设置 Admob

】如何使用适用于Android的Adob​​eAIR设置Admob【英文标题】:HowtoSetupAdmobwithAdobeAIRforAndroid【发布时间】:2014-04-0811:55:08【问题描述】:我目前完成了一个项目并将其放在GooglePlay商店中。我使用Adob​​eFlashCS6和FlashDevelopAS3创建了... 查看详情

[air]新建窗口的方法

...镶边。对于带有系统镶边的窗口,不支持将transparent属性设置为true。opion.transparent=tru 查看详情

AS3 - AIR 主机和 SWF 发送器之间的 LocalConnection

...发布时间】:2019-02-2205:27:05【问题描述】:我无法在为AIR设置的主文件和为FlashPlayer(常规SWF)设置的从属文件之间使用本地连接。下面是两个测试文件的代码...主/接收文件://test-AIR.flaimportflash 查看详情

设置文本大小的最佳方法?

】设置文本大小的最佳方法?【英文标题】:Bestwaytosettextsize?【发布时间】:2011-12-2804:45:46【问题描述】:设置文本大小以使其在所有设备上看起来都相同的最佳方法是什么?我遇到的最大问题是设置按钮上的文本大小,以便一... 查看详情

androidstudio主题字体大小的设置

1、AndroidStudio主题的设置:设置AndroidStudio自带的主题设置第三方主题2、AndroidStudio字体的设置设置左面包名的字体大小设置右面代码编辑界面字体大小1.1设置AndroidStudio自带的主题及包名字体大小:  1.2导入第三方主题:&nb... 查看详情

设置 SKTexture 的大小

】设置SKTexture的大小【英文标题】:SetsizeforSKTexture【发布时间】:2014-02-1419:31:18【问题描述】:我如何为SKTexture设置大小我已经阅读了文档ClassReference我没有看到任何关于能够设置大小的信息。我知道size方法是一种返回方法,... 查看详情

使用数据列设置标记像素大小

】使用数据列设置标记像素大小【英文标题】:Setmarkerpixelsizeinplotlyusingacolumnofyourdata【发布时间】:2017-09-1605:46:25【问题描述】:我正在尝试使用数据中的列设置标记大小,但是值为1、2、5等的标记大小会根据基础数据而变化。... 查看详情

wps字体大小设置在哪

...、首先点击小箭头图标,选择格式->字体。3、进去字体设置界面之后,可以看到默认字体大小,类别,颜色,效果等。4、我们开始设置需要的字体类别,字形,字号,字体颜色等,这里统一设置的都是宋体,常规,五号字,... 查看详情

怎么设置字体的大小?

怎么设置手机字体大小如果您使用的是华为手机,可以按照以下方法操作。1、放大或缩小字体进入设置>显示和亮度>字体与显示大小,拖移滑块调整字体大小。2、放大或缩小屏幕内容显示大小可等比放大或缩小应用内显示... 查看详情

根据屏幕大小设置纵横比的公式是啥

】根据屏幕大小设置纵横比的公式是啥【英文标题】:whatistheformulaofaspectratiotosetaccordingtoscreensize根据屏幕大小设置纵横比的公式是什么【发布时间】:2021-07-0909:41:08【问题描述】:我想在我的列表中设置gridView。并且所有gridView... 查看详情

根据内容大小设置 UIView 的大小

】根据内容大小设置UIView的大小【英文标题】:SetsizeofUIViewbasedoncontentsize【发布时间】:2013-05-2015:32:16【问题描述】:是否可以在UIView上绘制一些东西,然后在绘制完成后,将视图调整为与之前绘制的东西相同的大小?例如,如... 查看详情

swift四个角设置不同半径大小的圆角

参考技术A1.四个角设置相同半径大小的圆角2.在指定frame四个角设置相同半径大小的圆角2.四个角设置不同半径大小的圆角参考文章:Swift-UIView设置四个角不同圆角大小 查看详情

如何根据图片大小动态设置imageView的大小

】如何根据图片大小动态设置imageView的大小【英文标题】:HowcanIdynamicallysetthesizeoftheimageViewaccordingtothesizeoftheimage【发布时间】:2012-05-1710:13:06【问题描述】:我使用InterfaceBuilder来布局我的视图和图像视图。我在视图上放了一个i... 查看详情