请问,QQ截图功能中 鼠标的形状是怎么改变的? 我现在也想把鼠标形状改成那样的。
我知道 
curnsor :=  csHand
 
可以改变,但是,这个鼠标形状只能设那些默认的,我想设成其它的,请问怎么设置? 再问一个问题,怎么在Form 打开时动态控制 Form 的位置? 谢谢....

解决方案 »

  1.   

    通过设置form.top 和form.left属性
      

  2.   

    关于自定义Cursor,可以看一下这篇文章,比较老了
    http://www.qqread.com/delphi/e217654.html关于位置,通过form的top和left两个属性来设置top表示form距离屏幕最上方的像素
    left表示距离屏幕左端的像素
      

  3.   


    procedure TForm1.FormCreate(Sender: TObject);
    var
       h: HICON;
    begin
      h := LoadCursorFromFile('c:\1.ico'); //ico或cur文件
      Screen.Cursors[0] := h;
      Screen.Cursor := h;
    end;
      

  4.   

    1、生成资源文件
      在Delphi中提供了一个图形编辑器(Image Editor),首先启动Image Editor,选择:File->New->Resource File;在弹出的窗口中用鼠键右键单击“Contents”,再弹出的菜单中单击:NewCursor
    2、装载与使用资源文件
     资源文件编辑生成后(文件名后缀为.res),要使用这些资源文件,首先要通过添加代在表单文件的implementation关键字中加入:  implementation
      { *.DFM}
      { TEST.RES}
      const
        crMycur1 = 1;
        crMycur2 = 2;  procedure TForm1.FormCreate(Sender: TObject);
      var
      begin
         Screen.Cursors[crMycur1] := LoadCursor(Hinstance,'CUR1');
         Screen.Cursors[crMycur2] := LoadCursor(Hinstance,'CUR2');
         form1.Cursor := crMycur1;
      end;
      

  5.   

    汗,错了Screen.Cursor := h;改成Screen.Cursor := 0; Screen.Cursors[]里面的序号 
      

  6.   

    首先,谢谢大家的回答 ,鼠标的问题已经解决,可是为什么我动态改变form的left ,top ,一点效果都没有呢? 不知道是不是还要设置其它属性呢? 
    请大家 再帮下忙。。
      

  7.   


    procedure TForm1.FormCreate(Sender: TObject);
    begin
      Position:=poDesigned;//也可在属性栏中修改
      Left:=10;
      Top:=20;
    end;
    测试好用的
      

  8.   

    Position  是不是固定了?
      

  9.   

    谢谢,问题解决了,我原来是
                Form1.left:=x;
                Form1.top:=y;
    这样设置的,一直不行,现在改成
                left:=x;
                                             top:=y;
    就可以了