如何在不让 Flash 8 隐藏工具提示的情况下在 ScrollPane 中显示工具提示?

Posted

技术标签:

【中文标题】如何在不让 Flash 8 隐藏工具提示的情况下在 ScrollPane 中显示工具提示?【英文标题】:How to show tooltips inside a ScrollPane without letting Flash 8 hide the tooltip? 【发布时间】:2012-01-26 23:53:42 【问题描述】:

我有一个滚动窗格的内容,当单击它时,会显示带有 attachMovieClip 的工具提示影片剪辑;问题是附加的影片剪辑,对于第一行,位于 ScrollPane 的边框下方并且部分不可见。 有没有办法解决这个问题(不改变附加影片剪辑的位置?)

【问题讨论】:

您是否尝试过将 getNextHighestDepth() 作为 attachMovie() 的第三个参数传递? help.adobe.com/en_US/AS2LCR/Flash_10.0/… 。以下内容也值得一看:help.adobe.com/it_IT/AS2LCR/Flash_10.0/… 和 goflashgo.wordpress.com/2007/04/19/simple-depth-manager 请给出一些代码来说明正在做什么。这仅在 AS3(FlashBuilder 等)中还是在 Flash IDE 中? “改变位置”是指 x,y 还是表示对象堆栈中的深度级别? 【参考方案1】:

我假设您在ScrollPanecontentPath 中加载一个影片剪辑。此影片剪辑动态加载 另一个 影片剪辑,即工具提示。如果您以这种方式加载工具提示,深度无关紧要:ScrollPane 对象中的所有内容都被剪裁,您将永远无法查看下面的内容。当然,这是ScrollPane 课程的全部意义所在;它一次只显示一些底层内容,并允许用户滚动。

下面是可以复制问题的代码:

this.attachMovie("tooltip1","tooltip1A", 100); //note the high level     
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() 
    tooltip1A._x = _xmouse;
    tooltip1A._y = _ymouse;
    updateAfterEvent();
;

Mouse.addListener(mouseListener);

把它放在一个库中的影片剪辑中(称之为paneContentMC)。打开属性。选中“Export for Actionscript”并将“标识符:”文本设为“paneContentMC1”。关闭属性,然后在paneContentMC 的时间线上创建一些随机图形。

创建另一个名为 tooltip 的影片剪辑。打开属性。勾选“Export for Actionscript”,将“Identifier:”文本设为“tooltip1”。

最后,在场景的主时间轴上,创建一个ScrollPane 并将“contentPath”属性设为“paneContentMC1”。在此时间线的第一帧的 Actionscript 中放置 stop(); 命令。

你有一个剪辑的工具提示。你如何解决这个问题?

您需要将工具提示附加到ScrollPane 内容之外的对象。由于您不知道运行时舞台上可能存在或不存在哪些对象,因此请选择一个全局对象,例如_root

进入paneContentMC 内的Actionscript。将代码更改为:

var mc1:MovieClip = _root.attachMovie("tooltip1","tooltip1A", _root.getNextHighestDepth());

var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() 
    _root.tooltip1A._x = _xmouse;
    _root.tooltip1A._y = _ymouse;
    updateAfterEvent();
;

这并不能完全解决问题,因为tooltip1AScrollPane 之外跟随鼠标。但如果tooltip1A 正在侦听来自paneContentMC 而不是鼠标的移动事件,这应该可以解决。

(已编辑以修复投票错误。)

【讨论】:

很高兴知道。感谢您的支持(我假设是您)! @iND:iND,对不起,这是我的错:我想给你丰富的回复投赞成票,但我投了反对票……如果你稍微修改一下你的回复,我似乎可以投赞成票。 好的,感谢您的评论。我编辑了它,所以看看是否有任何变化。

以上是关于如何在不让 Flash 8 隐藏工具提示的情况下在 ScrollPane 中显示工具提示?的主要内容,如果未能解决你的问题,请参考以下文章

在不提示的情况下在 Powershell 中获取当前用户的凭据对象

如何在不隐藏正文滚动条的情况下在固定 div 上滚动时禁用正文滚动?

OBIEE 11 - 如何在没有提示的情况下在 excel 中导出多页仪表板

如何在不重新加载的情况下在同一页面上提交文件[重复]

如何在不加载页面的情况下在一个页面中加载超过 1500 个产品?

如何在不提示用户提供 Facebook 权限的情况下在 iOS 应用程序中获取公共 Facebook 页面的提要?