如何在Tedit中截获Alt按键,Tab按键

解决方案 »

  1.   

    procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
      if key=18 then
      showmessage('Alt按键');
    end;
      

  2.   

    to: cjfzy(他山之石,可以攻玉。) 
    ?Alt会把一些键屏蔽,传不到key中
    我想用windows消息,最好有代码
      

  3.   

    if VK_ALT in KEY then 
    .............
    自已写..
      

  4.   

    楼上的代码似乎应该为:
    if Shift in VK_MENU then
    ……
      

  5.   

    procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
      if key=18 then key:=#0;//屏蔽
    end;
      

  6.   

    procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
     if key in ['tab','alt'] then
     showmessage('按了TAB或ALT键');
    end;
      

  7.   

    你们测试过吗?
    tab能传入Tedit吗?
    alt每次都能传入Tedit吗?
      

  8.   

    通过注册热健,具体看我的贴子
    http://expert.csdn.net/Expert/topic/2094/2094919.xml?temp=.9453546