回 帖 发 新 帖 刷新版面

主题:登录问题请教

本人是新手,在看一个登录界面的时候,对以下的一段程序代码不是很懂,请教一下各位高手!
procedure TFormb.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (Key = vk_Return) or(Key = vk_Down) then
    Edit2.SetFocus;

end;

procedure TFormb.Edit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if ((Key = vk_Return) or(Key = vk_Down))and (BitBtn1.Enabled = True) then
    BitBtn1.SetFocus
  else
    Edit2.SetFocus;
  if Key = vk_Up then
    Edit1.SetFocus;

end;
对于((Key = vk_Return) or(Key = vk_Down))起到的作用很不理解,
此外在看主界面的设计时,窗体中没有TreeView组件,但在单元中却存在以下代码
procedure TForm74.TreeView1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_ESCAPE then
    Close;
end;
想请教各位高手,这个函数起到了什么作用,又是如何得来的。
本人联系方式:moused@bvg.com.cn
还请高手指点一二

回复列表 (共4个回复)

沙发

vk_+键名 就是伪键值
vk_Return 回车  vk_Down 箭头键下 vk_up 箭头键上 VK_ESCAPE ESC键盘
就是按下什么键盘做相应的操作 应该自己能理解了吧
procedure TForm74.TreeView1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
这个自己仔细找下吧  首先找到TForm74这个窗体看看 然后在看看他的单元单码

板凳

procedure TForm74.TreeView1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_ESCAPE then
    Close;
end;
这段代码有可能是这么回事..
要是真的找不到treeview1这个组件呢,,就可能是因为在设计的时候留下的代码..
到最后用不到treeview1这个组件,所以删了....而代码不会跟着删,还是存在的...
要手工删除才行...

3 楼

当然也有可能他不是通过拖拉控见的方式生成的变量.
看看程序段里有没有通过代码生成的控件.
procedure TForm74.TreeView1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_ESCAPE then
    Close;
end;

4 楼


谢谢

我来回复

您尚未登录,请登录后再回复。点此登录或注册