我想创建一个特别form其位置由光标来定,并检测是否按下ESC如果按下则退出!

解决方案 »

  1.   

    procedure TForm1.RichEdit1KeyPress(Sender: TObject; var Key: Char);
    var p:tpoint;
    begin
       if key='.' then
        begin
          GetCaretPos(p);
          form2.Left:=richedit1.Left+p.X;
          form2.Top:=richedit1.Top+p.Y;         //位置还需要调整
          form2.Parent:=self;
          form2.Show;
        end;
    end;
      

  2.   

    嗯,觉得jinjazz(我是jin)的想法值得推敲。不过如果每次form中的数据是一样的,不知道有没有好的办法解决?难道创建若干个不同的form?
      

  3.   

    form上面放个listbox,根据你 '.'之前的单词动态搜索(文件就可以了,不用数据库)对应的属性加载到listbox