Lorem Ipsum 只是打印的虚拟文本

问题描述 投票:0回答:1

Lorem Ipsum 只是印刷和排版行业的虚拟文本。自 1500 年代以来,Lorem Ipsum 一直是行业标准的虚拟文本,当时一位不知名的印刷商拿走了一堆字体并将其打乱以制作一本字体样本簿。它不仅经历了五个世纪的考验,而且跨越了电子排版的时代,基本保持不变。它在 20 世纪 60 年代随着包含 Lorem Ipsum 段落的 Letraset 表的发布而流行起来,最近又随着包含 Lorem Ipsum 版本的 Aldus PageMaker 等桌面出版软件而流行。

vb.net keyboard-shortcuts key-bindings
1个回答
1
投票

这里有一种捕获

Enter
键的方法。您应该能够扩展这个概念以实现您想要的。

Public Class Form1
    Private Sub Form1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Me.KeyPress
        If e.KeyChar = Convert.ToChar(13) Then
            MsgBox("You pressed Enter")
        End If
    End Sub
End Class

玩得开心!


这里有一个可以帮助您处理表单的编辑:

假设您有一个主窗体(“外部窗体”),其中包含一个“子”窗口。我说“孩子”,但它与继承无关,它们只是形式。

现在,即使焦点位于“子”表单上,您也希望“主”表单捕获按键操作。这是一种忍者式的方法来实现这一点。它具有简单的品质,但并不是最优雅的。尽管如此,它仍会按预期工作。

在“主”表单中,您需要以允许您使用它的事件和公共事件的方式跟踪“子”表单:

Public Class Main
    'modal variable to keep track of the child form
    Private WithEvents _childForm As Form

    'the rest of your main class goes here
End Class

我不知道您是否只有一个子表单还是多个子表单,因此如果您有多个子表单或数量可变,您可以考虑使用列表:

Private _childFormsList As New List(Of Form)

现在,每次打开表单时,都必须更新主窗体中的模态变量(我将假设您一次只有一个子表单,以使事情变得更容易):

_childForm = New ChildFormClass()
_childForm.Show()
'or whatever you're doing with the Form

现在,回到之前的这一行:

Private Sub Form1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Me.KeyPress

并从子表单中添加相关事件:

Private Sub Form1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Me.KeyPress, _childForm.KeyPressed

现在两个表单都会触发此事件。不过,您应该重命名 Sub,因为它不仅会触发 Form1(主 Form,无论您命名它)。

如果您还有其他问题,我会时不时地过来看看。

© www.soinside.com 2019 - 2024. All rights reserved.