我试图搜索这个没有任何运气。 好奇如果可以在鼠标上使用滚轮,同时将鼠标悬停在GUI中的文本框上,而不是在文本框具有焦点时。我正在使用WinForms,也许它可以在WPF中使用?
以下是我的文本框的当前代码:
$textboxResults = New-Object System.Windows.Forms.TextBox
$textboxResults.Size = New-Object Drawing.Size @(300,378)#585,378
$textboxResults.Location = New-Object Drawing.Size @(30,165)#64,143
$textboxResults.Multiline = $true
$textboxResults.TabStop = $false
$textboxResults.ReadOnly = $true
$textboxResults.ScrollBars = "Both"
答案 0 :(得分:1)
在原始问题中,询问是否可以在不给予文本框焦点的情况下完成所需的行为。我无法做到这一点但是在评论中OP询问是否有办法
...在文本框中向上和向下滚动而不单击...只是 将鼠标悬停在......上方
我将假设您不关心文本框是否具有焦点,但您不想点击以提供焦点。有了这个假设,这是我的解决方案:
首先,我们需要为有问题的文本框(或框)创建一个自定义鼠标悬停事件,以便为框提供焦点:
function textBoxMouseHover(){
$this.focus()
}
请注意,使用$ this来引用发送对象是特定于版本的。我不认为它会在powershell v2之前发挥作用。
接下来,我们需要将此事件添加到文本框中:
$myTextBox.add_mousehover({textBoxMouseHover})
那就是它。将鼠标悬停在附加了此事件的文本框上会使框焦点,您可以立即使用鼠标滚轮滚动。您可以将此事件附加到任意数量的文本框中。至于这样做没有重点,我担心我不够熟练。