这段代码没试过,应该可以吧,可以就要给我分了
 在form的keydown事件中写:
 if(Shift.Contains(ssShift))
  {
      if(Key==VK_INSERT)
        {
          //你的代码;
       }

解决方案 »

  1.   

    在你需要模拟的地方,用postmessage函数发一个消息,消息内容是与虚拟键值相关的查一查吧我也不太记得了人老啦
      

  2.   

    to:menliwxj(有缘) 
    麻烦你,就用你的方法,帮我弄一个实例,我想不会太复杂,请帮忙。
      

  3.   

    shift+insert是系统的粘贴消息,其实就是Ctrl+C的组合
      

  4.   

    var
       li_key_shift,li_key_tab :intger;
    begin
       li_key_shift := 16;
       li_key_tab  := 9;
       keybd_event(li_key_shift, 0, 0, 0);  //SHIFT按下
       keybd_event(li_key_tab, 0, 0, 0);    //TAB  按下
       keybd_event(li_key_tab, 0, 2, 0);    //TAB  释放
       keybd_event(li_key_shift, 0, 2, 0);  //SHIFT释放
    end;//li_key_tab 改成 insert的键码 即可
      

  5.   

    能行吗?你们试过没有,我在edit和memo里都试过了,为什么不行呢?各位大侠,帮帮忙好吗?给个可行的方案.
      

  6.   

    keybd_event(vk_shift, 0, 0, 0);
      keybd_event(vk_insert, 0, KEYEVENTF_EXTENDEDKEY, 0);
      keybd_event(vk_shift, 0, 2, 0);
      

  7.   

    我也觉得那样不行。应该是postmessage发送消息,然后参数是
      keybd_event(vk_shift, 0, 0, 0);
      keybd_event(vk_insert, 0, KEYEVENTF_EXTENDEDKEY, 0);
      keybd_event(vk_shift, 0, 2, 0);
      

  8.   

    to:loh(乐啸天涯)
    我怎么看不懂你写的内容呀?
      

  9.   

    to:keyz(keyz)
        你这个方法不错,看来这五十分非你莫属了,能否借问一句,为什么vk_insert要用keyeventf_extendedkey而不能用keyeventf_keyup呢?
        另外,能否用postmessage向一个有句柄的编辑框发送这个Shift+insert键,我试个很多次,总是不能成功,请问你能做到吗?
      

  10.   

    To:benlay(benlay)
    为什么要用keyeventf_extendedkey,我也不是很清楚。keyeventf_extendedkey和keyeventf_keyup不冲突,应该可以一起使用的,keyeventf_keyup+keyeventf_extendedkey。keyeventf_keyup表示按键抬起。第二个问题我试了一下,下面的代码土了一点,但是可以用的。
     keybd_event(vk_shift, 0, 0, 0);
     application.ProcessMessages;
     sendmessage(edit1.Handle,wm_keydown,vk_insert,0);
     keybd_event(vk_shift, 0, 2, 0);其实我对这个也不是很熟悉,只是乱试了一下:)。
      

  11.   

    To:keyz(keyz)
        你提出的keybd_event加wm_keydown的方法我又试了一下,结果如下:
        有些情况下有效,比如Delphi自身的文本框控件和windows记事本,不管是否有显示,也不管是否在前台,都是可以用的;但有些情况下时而可用,时而不可用,比如我现在正输入文字的回复框里,如果这个文本框所在的网页是在前台显示,则有时可以响应我们模拟输入的组合键,如果不是在前台显示,则完全没有响应。
        以上问题,不知是何故,不知有没有专家大侠能给出一个比较满意的回复或是解决方法,让我们只要指定句柄就能成功的模拟出Shift+insert或其它的组合键。