问题标签 [active-window]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
3933 浏览

excel - 在 Excel VBA 中设置缩放而不选择

是否可以根据屏幕分辨率设置缩放级别Select

我遵循了代码:

取自https://stackoverflow.com/a/19439177/1903793

所需的代码将类似于:

更新。为什么我要避免选择?

  1. 我的工作表具有基于用户设置的隐藏列。因此,A1:AC1 范围内的某些列被隐藏了。我无法选择单列,因为此特定列可能被隐藏。
  2. 选择触发事件。当然,我可以禁用这些事件,但禁用这些事件有一些我想避免的副作用。
0 投票
1 回答
1548 浏览

vb.net - 如何检查某个进程是否有焦点?

我正在尝试检查 javaw.exe 是否有焦点,如果有,则执行某些代码。

以前我的代码会查找 javaw.exe 的进程 ID,然后将其与当前具有焦点的进程进行比较,该进程工作了一段时间,但后来我注意到当我有多个 javaw.exe 进程运行时,它会只在其中一个进程上工作,而当任何 javaw.exe 进程有焦点时我需要它工作。

有没有办法做到这一点?

0 投票
1 回答
960 浏览

windows-7 - 窗口的相对坐标是否会根据分辨率而变化?

我的同事似乎在使用我的 AHK 脚本时遇到了很多麻烦,而且听起来 MouseClicks 没有单击活动窗口中的正确位置。

这里的双方都使用 Windows 7。

它们的分辨率是 1600 x 900,而我使用的是 1280 x 1024。

我认为给定窗口的相对位置会有所不同,所以今天我让我的 IT 人员为我旁边的计算机获取 16:9 显示器。不幸的是,显示器不支持 1600 x 900 分辨率,当我注意到我没有检查这些显示器上的坐标时,因为它不是正确的分辨率。

我正在寻找另一种将坐标转换为该分辨率的方法,发现一个线程说转换我的坐标很简单:

我将此公式应用于 MouseClick 命令坐标,并在不同的分辨率下对其进行了测试,并且每次点击都转到错误的位置。

但是,我的起始分辨率的常规坐标仍然有效。

我不确定坐标是否是问题,这就是我在这里问的原因。

谢谢你。

0 投票
1 回答
3386 浏览

excel - 发送密钥和 AppActivate

方法:

我正在使用 SendKeys 和虚拟键盘的组合将击键发送到作为应用程序存储在 Citrix 上的核心管理系统。VBA 代码使用 AppActivate 和 Application.ActiveWindow 方法识别应用程序。

目标:

我的目标是让用户将数据输入到 Excel 电子表格中,并使用 VBA 将数据发送到核心管理系统,而不是用户手动键入。

问题:

我的问题很多,但截至目前,我正在努力将 Ctrl + f 发送到核心管理系统应用程序。它似乎无法识别笔画,但是,单独发送 f 或输入 "keybd_event VK_RETURN, mvk, 0, 0" 似乎有效。此外,“keybd_event VK_CONTROL, mvk, 0, 0”似乎很有希望,但运行时出现“溢出”错误。

代码(到目前为止):

请让我知道如何将 Ctrl + f 发送到系统应用程序,或者是否有更好的方法来解决这个问题。

谢谢!

0 投票
1 回答
1078 浏览

gnome - Retrieving active window from Mutter on Gnome/Wayland session

I'm trying to write an application that sends different dBus signals to different applications depending on what application is active. The idea is to pair it with Libinput-gestures, and allow per application gesture response. Problem is, it's impossible to tell which application is active on the client side.

I've been doing some research into detecting if an application has focus on any particular window manager under Wayland. Consensus is, Wayland doesn't know if an application has focus, and will not give that information. However the window manager itself does know.

So is there a way of creating an entirely server side routine for gnome, to send the title of the active window client side, to a select number of applications. In other words, we still have the "security" of not letting arbitrary applications know everything about the environment, but still allow some accessibility minded software retrieve that information and use it.

0 投票
1 回答
3459 浏览

python - python为什么win32process.GetWindowThreadProcessId() PID返回一个列表

我尝试在 python 中找到当前活动窗口的可执行文件路径。我不熟悉系统变量,也不知道我应该做什么,我找到了一些解决方案并与它们一起练习。

首先,我尝试获取当前活动窗口并找到相关的 PID,然后是路径。

当我使用 win32process 获取 PID 时,它返回一个列表。为什么?我必须选择列表的第一个元素才能获得正确的结果。PID不应该是整数吗?为什么它返回一个列表?为什么第二个元素是正确的而不是第一个?

0 投票
1 回答
438 浏览

python - 在python中获取活动窗口

我很无聊,只是在 Python 中为它做点什么。我看到有人在所有字母之间输入空格,并决定制作一个 Python 脚本来执行此操作。这很容易,但后来我想更进一步,因为从控制台复制/粘贴需要时间,所以我想让这个脚本在每次按下键盘后放置空格,但只有当我将 Discord 作为活动窗口时。我能找到的唯一可以为您提供活动窗口的东西是 5-15 年前的,而且都已经过时了。他们说使用win32gui,我安装了它,但它似乎不起作用。

编辑:为了澄清,我运行“pip install win32gui”并安装它,我打开一个python shell并输入“import win32gui”,它说没有这样的模块我查看了模块并找到了win32,根据帮助命令win32gui是一部分它的包,所以我尝试了 win32.win32gui 它说没有这样的属性

我是编码新手,我不完全确定自己在做什么。

0 投票
0 回答
89 浏览

c# - 发送密钥失败 - 窗口处于活动状态

我正在使用InputSimulator向活动 Windows 发送击键 (ctrl+c) 为了实现这一点,我将自己的表单最小化,并使用 WIN32 API 和 SetForegroundWindow 设置我希望将密钥发送到前台的应用程序。现在这一切都适用于大多数应用程序。但是,例如,我遇到了 Windows Mail 应用程序的问题。在发送 keycombo 之前,GetForegroundwindow 向我保证邮件应用程序确实处于活动状态。但是不执行复制命令。如果我在发送命令之前等待 1-2 秒(使用 Thread.sleep),它就可以工作。有谁知道如何解决这个问题?

使我的表单处于非活动状态

设置前景和按键

0 投票
1 回答
87 浏览

background - VB6 - 在后台到另一个程序窗口的问题?

我创建了一个在后台运行到另一个程序的 VB6 程序。这意味着程序窗口将只在这个其他程序的后面。我正在使用此代码,

另一个程序将运行这个 VB6 程序,它将自身设置为另一个程序窗口的背景。有用。但是有两个问题。

  1. 当 VB6 程序执行代码R = SetWindowLong(parenthwnd, GWL_HWNDPARENT, Me.hWnd)时,其他程序和 VB6 程序一起进入后台。VB6程序运行时如何激活其他程序?
  2. 当另一个程序关闭时,它有终止VB6程序的代码。但这不会关闭 VB6 程序。我认为这可能是由于运行代码R = SetWindowLong(parenthwnd, GWL_HWNDPARENT, Me.hWnd)。如何解决这个问题?
0 投票
2 回答
376 浏览

c# - 如何在不激活窗口的情况下启动 C# 程序?

我正在尝试创建一个 C# 程序,但我不希望窗口在打开时处于活动状态。我希望它在后台打开,并且窗口显示在我的其他程序之上,除了我希望我的活动窗口保持不变。这是因为我正在使用全屏程序,我不希望我的小弹出窗口让我退出全屏模式。

程序使用(可能有助于理解我需要什么):我正在创建一组将备用鼠标变成媒体控制器的宏。滚轮控制音量,左键控制播放/暂停等。我使用 Spotify 播放音乐,我希望能够独立于计算机的全局音量来更改 Spotify 的音量。我已经在这里使用代码解决了这个问题。我想显示一个弹出窗口,告诉我当我使用滚轮时,我正在改变 Spotify 的音量,而不是全局音量。我希望能够激活宏,显示弹出窗口,根据需要更改音量,然后在不退出全屏应用程序的情况下停用宏。希望这会有所帮助,谢谢!

程序使用编辑:这里只是一个解释视频,应该比试图解释更容易。澄清一下,我希望程序在启动时不要更改已激活的窗口,并且始终处于最顶层,而无需我先激活它。谢谢!!!https://streamable.com/2pewz

我正在使用一个名为 QuickMacros 的程序来打开弹出窗口,我在其中尝试了一些不同的设置,但没有任何运气。我对 C# 没有任何经验,所以我没有在 C# 中尝试过任何东西。

我的代码与问题无关,但在这里以防万一。所有这一切都是让我能够移动弹出窗口。

谢谢您的帮助!