以普通的写法,当鼠标先移到左边时会显示'左',但移到右边时不会显示'右'、必须先将鼠标移出图片后再移入图片的右边才会显示。我想实现的功能是移在左边时显示左后,移到右边(在此过程中鼠标始终没有移出整个图片)就会立即显示‘右’
奢望您的指教,感谢!!!

解决方案 »

  1.   

    判断IMAGE。WIDTH的值,并显示‘左’,‘右’
      

  2.   

    老兄,我的问题不会这么简单的啦。关键的当第一次鼠标移入左边或右边时,会显示出'左'或'右',但这时你没有将鼠标移出图片后,就立即移到图片的另一边,那个HINT还会显示吗?——当然不会!所以现在最难的就是解决这个问题,这个问题也即可以理解为如何直接使HINT显示。
      

  3.   

    在onMouseMove事件的处理程序中判断。
    当鼠标在控件上移动时发生该事件。
      

  4.   

    我晕~~~~~!!!再次说明,我提的问题不是这么简单的啦 !!!上边我重复说到:“关键的当第一次鼠标移入左边或右边时,会显示出'左'或'右',但这时你没有将鼠标移出图片后,就立即移到图片的另一边,那个HINT还会显示吗?”————是绝对绝对100%100%100%100%100%不能显示的。
      

  5.   

    可以在某个事件中设定application对象的HintShortPause属性,该属性控制
    鼠标停留多长时间后显示提示。
    并且在设计期把Image的showhint属性设为true;
    在onMouseMove事件的处理程序中判断,并改变hint的值
    ----------------ok!
      

  6.   

    app是根据鼠标在某个控件停留一定的时间后,才显示hint,而且显示、当鼠标没有移出该控件,app就不会再显示第二次hint了。如果有一个显示hint.show的过程就好了,但是在application或是各个控件中没有提供该功能,所以当在mousemove中修改了hint的值后并不能让其立即显示。
      

  7.   

    只要showhint=true,app会不断的显示hint
      

  8.   

    如果自己能有一个hint.show,那就好办了。在修改hint的值后,执行hint.show,则鼠标就会立即根据在图片的位置显示出hint的值,而不必<<<<<<须要鼠标移出控件后重新移入控件>>>>>>才能显示。
      

  9.   

    不会的,还是<<<<<<须要鼠标移出控件后重新移入控件>>>>>>才会显示第二次hint的。即使application.showhint:=true、image.showhint:=true也没办法让app不断的显示hint。
      

  10.   

    典型的例子是在hint中显示鼠标的坐标
      

  11.   

    是的,如果能让hint实时显示坐标就行了,但是要怎么办能才实现呢?
    ===========================
    如果这样子写:
    application.showhint:=true、form1.showhint:=true
    然后在form1.onmousemove中来个
    form1.hint:=inttostr(x)+','+inttostr(y);
    ===========================
    当鼠标进入form1时会显示hint,但是在form1中再次移动,尽管form1.hint的值已经被onmousemove所修改,但是并不会立即显示出来而须要将鼠标移出form1后再移入form1才能看到修后的hint,而且每移进移出一次才只能显示一次form1.hint。不是吗?
      

  12.   

    不好意思,我的想法错了。下面是新的方法:
    procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
    //form1.ShowHint:=false;hint:=inttostr(x)+','+inttostr(y);
    application.ActivateHint(point(x,y));
    //form1.ShowHint:=true;
    end;
      

  13.   

    真谢谢你!!!真不好意思,我晚上有点事得早点吃饭,晚上我再试一下你的新方法。
    谢谢你!!!!!!!(我去eat了.)
      

  14.   

    哈....谢谢!!!,用了application.ActivateHint的确解决问题了。