【问题标题】:How do I make my custom treeview accept the Enter key?如何让我的自定义树视图接受 Enter 键?
【发布时间】:2011-02-21 19:54:23
【问题描述】:

我有一个继承自 TTreeView 的自定义控件。当用户在控件获得焦点时按 ENTER 时,我试图通过给它一个响应 VK_RETURN 的 WM_CHAR 处理程序来赋予它特殊的行为,但它永远不会被调用。

我尝试通过添加一个显示msg.Result := msg.Result or DLGC_WANTALLKEYS; 的WM_GETDLGCODE 处理程序来确保它能够接受所有键盘输入。现在它收到了 ENTER 键,但箭头键不再起作用!

有人知道我该如何正确解决这个问题吗?

【问题讨论】:

    标签: delphi custom-controls vcl


    【解决方案1】:

    我总是这样

    WM_GETDLGCODE: Message.Result := Message.Result or DLGC_WANTCHARS or
                                     DLGC_WANTARROWS or DLGC_WANTTAB or
                                     DLGC_WANTALLKEYS;
    

    在编写文本编辑器时。也许你只是忘记了DLGC_WANTARROWS

    【讨论】:

    • 谢谢!那行得通。你会认为一个叫做 WantAllKeys 的东西意味着你想要 all 键,但我猜不是。去图吧。
    猜你喜欢
    • 1970-01-01
    • 2015-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-04
    相关资源
    最近更新 更多