【发布时间】:2020-04-14 17:42:32
【问题描述】:
任务:编写一个程序,单击时仅显示 3 个按钮,模拟在另一个窗口中按下组合键(宏 Ctrl+Z)。
我做了什么:我的代码:
Public Class Form1
Dim FigmaWindowName As String
Dim Processes
Public Sub New()
'init form
InitializeComponent()
'set top position
TopMost = True
End Sub
Private Sub ButtonUndo_Click(sender As Object, e As EventArgs) Handles ButtonUndo.Click
Processes = GetObject("winmgmts:").InstancesOf("Win32_Process")
For Each Process In Processes
If StrComp(Process.Name, "Figma.exe", vbTextCompare) = 0 Then
' Activate the window using its process ID...
With CreateObject("WScript.Shell")
.AppActivate(Process.ProcessId)
.SendKeys("(^z)")
End With
' We found our process. No more iteration required...
Exit For
End If
Next
'....other buttons
End Sub
End Class
问题:不稳定。如果它不起作用,则单击时两个窗口都会闪烁,并且组合键不会发送到其他应用程序。 https://www.loom.com/share/89c47dfa38bc4bb6b1d3ff8b97b84ac8
问题我做错了什么?
【问题讨论】:
标签: vba vb.net visual-studio visual-studio-2019 sendkeys