Futurebasic/语言/参考/窗口函数
WindowInformation = WINDOW(expr)
修订版: 2002 年 2 月(版本 6)
此函数返回与窗口相关的信息(通常是当前输出窗口)。您在 expr
中指定的值决定了返回的哪种信息,如下段落所述。
活动窗口、活动文档窗口、活动调色板窗口和输出窗口的 ID
WINDOW(_activeWnd)
返回当前活动窗口的窗口 ID 号,如果没有活动窗口则返回零。WINDOW(_activeDoc)
返回当前活动文档窗口的窗口 ID 号,如果没有活动文档窗口则返回零。在搜索活动文档时,此函数会绕过所有调色板,以查找类型属性设置为包含_keepInBack
的窗口。WINDOW(_activePlt)
返回最前面的调色板的窗口 ID 号。为了存在调色板,必须打开一个或多个类型属性设置为包含_keepInBack
的文档窗口。此时,所有非_keepInBack
窗口都变为调色板,并浮动在文档窗口之上。WINDOW(_outputWnd)
返回当前输出窗口的窗口 ID 号,如果输出当前定向到 FutureBasic 创建的屏幕窗口以外的位置(例如,打印机),则返回零。
窗口大小
WINDOW(_width)
返回当前输出窗口的内容区域的宽度(以像素为单位)。WINDOW(_height)
返回当前输出窗口的内容区域的高度(以像素为单位)。(注意:内容区域不包括窗口的框架。)
窗口位置(外观管理器)
WINDOW(_kFBstructureTop)
返回从屏幕顶部到窗口结构区域顶部的距离。WINDOW(_kFBstructureLeft)
返回从屏幕左侧到窗口结构区域左侧的距离。WINDOW(_kFBstructureWidth)
返回窗口结构区域的宽度。WINDOW(_kFBstructureHeight)
返回窗口结构区域的高度。WINDOW(_kFBcontentTop)
返回从屏幕顶部到窗口内容区域顶部的距离。WINDOW(_kFBcontentLeft)
返回从屏幕左侧到窗口内容区域左侧的距离。WINDOW(_kFBcontentWidth)
返回窗口内容区域的宽度。这通常与WINDOW(_width)
相同。WINDOW(_kFBcontentHeight)
返回窗口内容区域的高度。这通常与WINDOW(_height)
相同。
笔位置
WINDOW(_penH)
返回当前输出窗口中笔的水平位置(以像素为单位)。WINDOW(_penV)
返回当前输出窗口中笔的垂直位置(以像素为单位)。
窗口记录指针
WINDOW(_wndPointer
或_wndRef)
返回当前输出窗口的窗口记录的指针。有关窗口记录内容的信息,请参见<a href="get%20window.html">GET WINDOW</a>
语句,以及 <a href="http://developer.apple.com/documentation/mac/Toolbox/Toolbox-188.html#HEADING188-0">"窗口管理器" 章</a> of <a href="http://developer.apple.com/documentation/macos8/mac8.html">Inside Macintosh</a>: <a href="http://developer.apple.com/documentation/mac/Toolbox/Toolbox-2.html">Macintosh 工具箱基本要素</a>,以及 <a href="http://developer.apple.com/documentation/macos8/mac8.html">Inside Macintosh</a>: <a href="http://developer.apple.com/documentation/mac/QuickDraw/QuickDraw-2.html">使用 QuickDraw 进行成像</a> 中的 grafPort 和 CGrafPort 数据结构的描述。WINDOW(_wndPort)
返回当前用于输出的 grafport。
剪贴板内容
WINDOW(_textClip)
如果剪贴板上存在类型为 "TEXT" 的信息,则返回非零值;否则返回零。WINDOW(_pictClip)
如果剪贴板上存在类型为 "PICT" 的信息,则返回非零值;否则返回零。
窗口类(仅限标准 BASIC)
WINDOW(_outputWClass)
返回分配给当前输出窗口的“类号”。WINDOW(_activeWClass)
返回分配给当前活动窗口的“类号”。WINDOW(_outputWCategory)
返回为外观管理器运行时分配给当前输出窗口的“类号”。WINDOW(_activeWCategory)
返回为外观管理器运行时分配给当前活动窗口的“类号”。(有关类号的更多信息,请参见<a href="window%20statement.html">WINDOW</a>
语句)。
其他窗口信息(外观管理器)
WINDOW(_kFBMacWClass)
返回工具箱窗口类。返回值可能包括_kDocumentWindowClass
或_kMovableModalWindowClass
等。WINDOW(_kFBMacWAttributes)
返回有关窗口的工具箱属性。值可能包括_kWindowResizableAttribute
或_kWindowCloseBoxAttribute
。WINDOW(_kFBwDescHandle)
返回对存储在窗口 refcon 中的 FBwindowDescription 记录的句柄。虽然此信息可能会发生变化,但目前包含以下数据
BEGIN RECORD FBwindowDescription DIM FBwRef<spacer type="horizontal" size="227">AS LONG<spacer type="horizontal" size="22">// 标准 FB 引用号
DIM FBwZoomRect<spacer type="horizontal" size="51">AS RECT<spacer type="horizontal" size="21">// 最佳缩小位置,
<spacer type="horizontal" size="248">// 默认为空
DIM FBwAttributes<spacer type="horizontal" size="37">AS WindowAttributes
DIM FBwWindowClass AS WindowClass
DIM FBwControlList AS HANDLE // 控件的链接列表
DIM FBwEFList<spacer type="horizontal" size="65">AS HANDLE // EF 的链接列表
DIM FBwFSSpec<spacer type="horizontal" size="65">AS FSSpec // 关联的文件规范
<spacer type="horizontal" size="248">//(影响代理图标)
DIM FBwCreator<spacer type="horizontal" size="58">AS OSType // 用于代理图标
DIM FBwFileType<spacer type="horizontal" size="51">AS OSType // 用于代理图标
DIM FBidealSizeX<spacer type="horizontal" size="44">AS SHORT<spacer type="horizontal" size="15">// 缩放
DIM FBidealSizeY<spacer type="horizontal" size="44">AS SHORT<spacer type="horizontal" size="15">// 缩放
DIM FBwClipRgn<spacer type="horizontal" size="58">AS RgnHandle
DIM FBwVScrollH<spacer type="horizontal" size="51">AS HANDLE // 如果没有垂直滚动条,则为 0
DIM FBwHScrollH<spacer type="horizontal" size="51">AS HANDLE // 如果没有水平滚动条,则为 0
DIM FBwCategory<spacer type="horizontal" size="51">AS LONG
DIM FBwClickThru<spacer type="horizontal" size="44">AS BOOLEAN
DIM FBwUpdateVisRgn<spacer type="horizontal" size="22">AS BOOLEAN
DIM FBwKeepInactive<spacer type="horizontal" size="22">AS BOOLEAN // 用于背景窗口
DIM FBwNoAutoFocus AS BOOLEAN // 影响 Tab 键
<spacer type="horizontal" size="255">// 使用 EF 和
<spacer type="horizontal" size="255">// 文本按钮进行处理
DIM &
END RECORD
WINDOW(_kFBwClickThru)
如果设置了此属性位,则返回非零值。WINDOW(_kFBFloatingWndPtr)
返回最前面的浮动窗口的窗口指针。
屏幕边框在本地坐标系中
WINDOW(_toLeft)
返回屏幕左边缘的水平像素位置,以当前输出窗口的本地坐标系表示(注意,如果窗口完全位于屏幕上,则该值将为负)。WINDOW(_toTop)
返回屏幕顶部的垂直像素位置,以当前输出窗口的本地坐标系表示(注意,如果窗口完全位于屏幕上,则该值将为负)。WINDOW(_toRight)
返回屏幕右边缘的水平像素位置,以当前输出窗口的本地坐标系表示。WINDOW(_toBottom)
返回屏幕底部的垂直像素位置,以当前输出窗口的本地坐标系表示。
(注意,如果输出当前定向到屏幕窗口以外的位置,则这些数字没有意义。)
检查窗口是否存在 如果您在 expr
中指定负值,则 WINDOW(expr)
如果存在 ID 号为 ABS(expr)
的窗口,则返回非零值;否则返回零。返回的值不取决于窗口当前是否可见;它只取决于窗口是否已创建(使用 WINDOW
语句)且尚未关闭(使用 WINDOW CLOSE
语句)。
编辑字段和图片字段信息
WINDOW(_efNum)
返回当前活动编辑字段或图片字段的 ID 号;如果没有当前活动编辑字段或图片字段,则返回零。WINDOW(_selStart)
返回当前活动编辑字段(如果有)中选定文本或插入点的起始字符位置。WINDOW(_selEnd)
返回当前活动编辑字段(如果有)中选定文本或插入点的结束字符位置。WINDOW(_efHandle)
返回当前活动编辑字段(如果有)的 TextEdit 记录句柄;这与TEHANDLE(WINDOW(_efNum))
返回的值相同。WINDOW(_lastEfNum)
返回先前活动编辑字段的 ID 号(或零,如果先前没有其他编辑字段处于活动状态)。WINDOW(_efTextLen)
返回当前活动编辑字段(如果有)中的字符数。WINDOW(_teBlock)
返回当前活动编辑字段或图片字段(如果有)的编辑字段描述符的句柄。WINDOW(_efClass)
返回分配给当前活动编辑字段(如果有)的efClass
参数;或分配给当前活动图片字段(如果有)的just
参数的负数。
如果输出当前定向到除屏幕窗口以外的图形端口(例如,打印机或屏幕外 GWorld),则除非另有说明,否则对“当前输出窗口”的引用适用于当前端口。
WINDOW 语句; 编辑字段; 图片字段; 设置选择; TEHANDLE; 获取窗口; 系统函数; 窗口外观; 定义窗口类别