gpt4 book ai didi

python - 在 Linux/X11 上以编程方式启动独立的 Adob​​e flashplayer

转载 作者:IT王子 更新时间:2023-10-29 00:26:03 26 4
gpt4 key购买 nike

当您从命令行启动独立的 flashplayer 时,除了 .swf 文件外,它不接受任何参数。我需要播放器全屏显示,没有窗口边框等。这可以通过在程序启动后按 ctrl+f 来完成。我想以编程方式执行此操作,因为我需要它在没有任何人工交互的情况下以全屏模式启动。

我的猜测是我需要知道如何获取窗口句柄,然后向它发送一个类似于“ctrl+f”击键的事件。

如果有什么不同的话,看起来 flashplayer 是一个 gtk 应用程序,我安装了带有 pygtk 的 python。

更新(我使用的解决方案...感谢 ypnos 的回答):

./flashplayer http://example.com/example.swf & sleep 3 && ~/xsendkey -window "Adobe Flash Player 10" Control+F

最佳答案

您可以使用专用应用程序将击键发送到窗口管理器,如果窗口作为屏幕上的事件窗口启动,则窗口管理器应将其传递给 flash。但是,由于启动闪光灯和窗口显示之间存在延迟,这很容易出错。

例如,您的脚本可以执行如下操作:Flash播放器*.swf sleep 3 && xsendkey Control+F

可以在此处找到应用程序 xsendkey:http://people.csail.mit.edu/adonovan/hacks/xsendkey.html如果没有给定特定窗口,它将把它发送到由您的窗口管理器处理的根窗口。您也可以尝试使用 xprop 或与之相关的东西先找出窗口 ID。

另一个选项是窗口管理器,它能够记住您的设置并自动应用它们。例如 Fluxbos 提供了这个特性。如果 flashplayer 支持调整大小,您可以设置 fluxbox 使 Window decor-less 并将其拉伸(stretch)到整个屏幕。这也不太好,因为它可能会影响您打开的所有 flashplayer 窗口。

关于python - 在 Linux/X11 上以编程方式启动独立的 Adob​​e flashplayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/164460/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com