tab键使输入焦点在几个dbedit之间转换,但光标总在最有端,怎样才能使光标停留在最左端哪???

解决方案 »

  1.   

    to gytyl(delphi混混) :是dbedit,不是edit,不信你试一下
    to ljmanage(过客): 如果是修改时,会给使用者造成误解,好象是没有清除,里边的内容却不见了如何解决那???
      

  2.   

    DBEdit1->SetFocus();
    DBEdit1->SelStart =0;
    DBEdit1->SelLength=0;
      

  3.   

    to baffling(迷茫困惑中) :不行,唉,郁闷,如何是好??
      

  4.   

    to baffling(迷茫困惑中) :我的dbedit很多,不可能挨个写代码,有没有好的实现方法?
    多谢了!
      

  5.   

    哎,帮人帮到底.你在其中一个dbedit的enter事件中加入如下代码():
    ((TDBEdit*)(Sender))->SelStart =0;
    ((TDBEdit*)(Sender))->SelLength=0;
    例如:
    void __fastcall TForm1::DBEdit1Enter(TObject *Sender)
    {
         ((TDBEdit*)(Sender))->SelStart =0;
         ((TDBEdit*)(Sender))->SelLength=0;}然后在窗口上选中其它所有的DBEdit控件,在enter事件的下拉列表中找到DBEdit1Enter事件,双击即可,再多的DBEdit也能轻松搞定.
    我试过了,绝对行的.
      

  6.   

    procedure TForm1.DBEdit1Enter(Sender: TObject);
    begin
        TDBEdit(Sender).Text :=   DBEdit1.Text ;
        TDBEdit(Sender).SelStart := 0 ;
        TDBEdit(Sender).SelLength := 0;
    end;
    然后将所有的DBEDIT控件的ONENTER事件写为DBEdit1Enter