最近在边学边做毕业设计,遇到两个问题:
  1.在点增加一个新记录时,能不能在指定的dbedit控件中自动填写内容,比如职工号加一?
  2.我在修改记录时,只要有一个记录没有输入,就会停止程序,怎么才能控制不出错?我没有用Navigator控件,自定义的按钮。
 哪位兄弟帮帮忙,我还有很多分可以发的。以后还会有很多问题,请一定指教!谢谢了!

解决方案 »

  1.   

    1.dbedit.field.value:=内容
    2.在保存前判断,心填字段是否都添写了
      

  2.   

    在数据集的AfterInsert事件,或是BeforePost事件中写代码对职工号进行自动赋值就可以了.
      

  3.   

    var qquery:TADOQuery;
    begin
      qquery:=tadoquery.create(self);
      qquery.connection:=adoconnection1;
      with qquery do
      begin 
        close;
        sql.clear;
        sql.add('select max(编号) from yourtable');
        open;
      end;
      dbedit.text:=inttostr(qquery.fieldbyname('编号').asinteger+1);
      ....
    end;
    var i:integer;
    begin
      for i:=0 to Components.count do
      begin
        if (component[i] as tdbedit).text='' then
        begin
           showmessage('不能为空!');
           ....
        end;
      end;
    end;  
    大致的思路就是这样!
      

  4.   

    谢谢两位。
    保存前判断,新填字段都填写,如果字段太多,每个都要填很麻烦,能不能指定必须填某几个,怎么做?
    假设form1、datasouce1、table1、dbedit1、2、3、4、5、6,必须填1和3该怎么做?
      

  5.   

    if trim(dbedit1.text)='' then
       your code...
    else
      if dbedit3.text='' then
       your code...
    else
       your code...
      

  6.   

    if trim(dbedit1.text)='' then...中的trim是个什么意思,为什么要trim?
      

  7.   

    你可以增加标志来确定是否有增加。而Trim是什么,是把dbedit.txt空格去掉!多看看书!兄弟!
      

  8.   

    另外,我在左边加了个可以过滤不同部门的treeview,我想在选到指定部门点增加按钮时可以自动在部门(dbedit6中)栏目自动填入当前选择的部门,该怎么做?