delphi – 聚焦下一个控制输入 – 覆盖的KeyUp
发布时间:2020-12-15 04:28:20 所属栏目:大数据 来源:网络整理
导读:我有我的自定义类扩展TEdit: TMyTextEdit = class (TEdit) private fFocusNextOnEnter: Boolean; public procedure KeyUp(var Key: Word; Shift :TShiftState); override; published property FocusNextOnExnter: Boolean read fFocusNextOnEnter write fFo
我有我的自定义类扩展TEdit:
TMyTextEdit = class (TEdit) private fFocusNextOnEnter: Boolean; public procedure KeyUp(var Key: Word; Shift :TShiftState); override; published property FocusNextOnExnter: Boolean read fFocusNextOnEnter write fFocusNextOnEnter default false; end; 在KeyUp过程中我做: procedure TMyTextEdit.KeyUp(var Key: Word; Shift: TShiftState); begin inherited; if FocusNextOnExnter then if Key = VK_RETURN then SelectNext(Self as TWinControl,True,false); end; 但它并没有转移到下一个控件的焦点.我尝试过了 if Key = VK_RETURN then Key := VK_TAB; 但它也不工作.我失踪了什么 解决方法SelectNext 选择下一个兄弟姐妹控制,即.您需要在编辑的父母上调用它:
type THackWinControl = class(TWinControl); if Key = VK_RETURN then if Assigned(Parent) then THackWinControl(Parent).SelectNext(Self,False); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |