如何仅在VBA Access中捕获vbKeyReturn

时间:2019-04-10 16:49:12

标签: vba ms-access

我在textbox的{​​{1}}中有一个subForm控件。但是,当我按singleForm键时,它会添加一个enter,而前一个new record会隐藏起来。我已经将record设置为form property

我使用下面的代码来捕获current record密钥,该密钥有效。

enter

但是,现在我无法在Private Sub txt_1_KeyDown (KeyCode As Intger, Shift as Integer) Select case KeyCode Case vbKeyCode KeyCode = 0 Me.parent.Combo.SetFocus End Select End Sub 中使用new line添加Ctrl + Enter,因为一旦按下textbox,代码就会触发。有人可以帮助您更改上面的代码,使其仅捕获enter键,并保持默认的访问行为,即在按enter时添加新行。

3 个答案:

答案 0 :(得分:3)

您将需要一个条件表达式测试:

  • 按下 Enter 键(ASCII字符13)
  • 事件处理程序的Shift参数为零,表示没有与 Ctrl , Shift Alt >输入键。

代码可能看起来像这样:

Private Sub txt_1_KeyDown(KeyCode As Intger, Shift As Integer)
    If KeyCode = 13 And Shift = 0 Then
        KeyCode = 0
        Me.Parent.Combo.SetFocus
    End If
End Sub

答案 1 :(得分:2)

您需要像这样检查{ "src_folders" : ["tests"], "output_folder" : "reports/XMLReports", "custom_commands_path" : "", "custom_assertions_path" : "", "page_objects_path" : "dealer", "globals_path" : "", "test_workers": false, "selenium": { "cli_args": { "webdriver.chrome.driver" : "node_modules/.bin/chromedriver.cmd", "webdriver.gecko.driver" : "node_modules/.bin/geckodriver.cmd", "webdriver.edge.driver" : "node_modules/.bin/edgedriver.cmd" }, "log_path": "", "port": 4460, "server_path": "lib/drivers/selenium-server-standalone-3.141.59.jar", "start_process": true }, "test_settings" : { "chrome" : { "launch_url" : "http://localhost", "selenium_port" : 4460, "selenium_host" : "127.0.0.1", "silent": true, "screenshots" : { "enabled" : false, "path" : "screenshots/Chrome/" }, "desiredCapabilities": { "browserName": "chrome", "chromeOptions":{ "args": [ "disable-web-security", "ignore-certificate-errors", "--test-type", "--disable-gpu", "--headless", "--remote-debugging-port=9222" ] } } }, "edge" : { "desiredCapabilities": { "browserName": "MicrosoftEdge" } } } } 参数:

Shift

答案 2 :(得分:0)

尝试检查关键代码:

Private Sub txt_1_KeyDown(KeyCode As Intger, Shift as Integer)

    Select Case KeyCode
        Case vbKeyEnter
            KeyCode = 0
            Me.parent.Combo.SetFocus
        Case Else
            ' Leave key code as is.
    End Select

End Sub