做了个小程序,FORM1窗体上有个BUTTON,点击打开FOMR2,并且将FORM1上的Edit1值通过:FORM2.EDIT1.TEXT:=FORM1.EDIT1.TEXT,然后在FORM1上输入字符,FORM2。EDIT1上也要显示才对,现在是第一次点击BUTTON,FORM2上EDIT1上不显示,要关闭FORM2,再次点击BUTTON才能正确显示。好像代码第一次不能执行,要半闭窗体,第二次打开才能执行,为什么呢?

解决方案 »

  1.   

    你是在那个事件上写的FORM2.EDIT1.TEXT:=FORM1.EDIT1.TEXT?
      

  2.   

    你第一次点击button,因为你还没在form1里面输入值,这时button事件取值为空,当然form2上面没内容了。当你在form1输入完了之后,再点button,这时button取值不为空了,这时,当然就有内容了。
      

  3.   

    (1)mainform.mainmenu1->供应商设置->代码:
        formclick:=false;(formclick为全局变量)
        supplierset.ShowModal;
    (2)bgypcgrk.button1->查找供应商->代码:
        supplierset.ShowModal;
        formclick:=true;
    (3)supplierset.dbgrid1->ondblclick->代码:
    //供应商列表,双击将选中供应商名称赋值给采购入库单中的供应商Edit4.text
      if formclick then
        begin
        bgypcgrk.Edit4.Text:=supplierset.DBGrid1.Fields[1].AsString;(选中供应商赋值) 
        supplierset.Close;
        end
      else
        Exit;
    //-------------------------------------------
     通过全局变量判断supplierset.dbgrid1双击所要执行代码,但如上代码在运行时,第一次打开窗体不能正常操作,要关闭窗体,第二次打开才行,不明白错在哪呀