📄 lc_bcb_30.txt
字号:
用Enter 键 控 制 焦 点 切 换 的 方 法
用Enter 键 控 制 焦 点 切 换 的
方 法
在Windows 环 境 下, 要 使 一 个 控 件
取 得 焦 点, 可 在 该 控 件 上 用 鼠 标 单 击 一 下, 或 按Tab 键
将 焦 点 移 至 该 控 件 上。 这 种 控 制 焦 点 切 换 的 方 法 有 时
不 符 合 用 户 的 习 惯。 就 图 一 而 言, 用 户 就 希 望 用Enter
键, 控 制 焦 点 由Edit1 切 换 到 Edit2。 要 实 现 这 样 的 功 能 需
借 助WinAPI 函 数SendMessage 来 完 成。 方 法 是: 先 设Form1 的KeyPreview
属 性 为true, 然 后 在Form1 的OnKeyPress 事 件 中 加 入 如 下 的 代 码。
这 样, 用 户 就 可 以 通 过 按Enter, 键 控 制 焦 点 按 定 义 好 的Taborder
顺 序 来 移 动 了 !
void __fastcall TForm1::FormKeyPress(TObject *Sender, char &Key)
{
if(Key==VK_RETURN)
{
SendMessage(this- >Handle,WM_NEXTDLGCTL,0,0);
Key=0;
}
}
返回