当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: architectural neutral distribution format (andf)这个英文单词究竟指的是什么编译技术---是中间代码生成 ......
    摘要: aa ......


各位大侠快帮帮我(StringGrid)

问题:第一次输入若干条记录(StringGrid)且保存退出,当第二交输入时则会依次的把第一次输入的记录复盖。  
   
  代码部份:procedure   TForm5.SpeedButton2Click(Sender:   TObject);  
  begin  
            form4.StringGrid1.Cells[1,i+1]:=edit1.text;  
            form4.StringGrid1.Cells[2,i+1]:=ComboBox1.Text;  
            form4.StringGrid1.Cells[3,i+1]:=ComboBox2.Text;  
            form4.StringGrid1.Cells[4,i+1]:=edit5.text;  
            form4.StringGrid1.Cells[5,i+1]:=edit3.text;  
            form4.StringGrid1.Cells[6,i+1]:=edit4.text;  
            i:=i+1;  
            form4.stringGrid1.Cells[0,i]:=intTostr(i+0);  
            form5.close;  
  这是为什幺啊?怎幺改这段代码呢?请各位高手帮忙!不胜感激!!!  
 

NO.1   作者: netlib

应该是这样的,你改了StringGrid中的cells,  
  以前的内容当然会被覆盖。

NO.2   作者: dupenf

不要close,按一次输入一行

NO.3   作者: netlib

你的i定义成公用变量  
  定义在  
  var  
      Form1:   TForm1;  
      i:   integer;//定义在这    
  implementation  
   
  然后在form1的oncreate里写上i:=0;

NO.4   作者: youou

form4.stringGrid1.Cells[0,i]:=intTostr(i+0);  
  这怎么又跑到上一个CELL中去了?  
   
  先把这句{}掉,然后调下i的值有否增加就行了?

NO.5   作者: surfguy

你关窗后,i被释放,你再开时,自然是盖了以前的记录。  
  i应在主窗体中定义为全局变量。

NO.6   作者: youou

FORM2为主窗体,上面放了一个SpeedButton1,FORM1上有STRINGGRID1;  
   
  procedure   TForm2.SpeedButton1Click(Sender:   TObject);  
  begin  
   
            form1.StringGrid1.Cells[1,i+1]:=edit1.text;  
            form1.StringGrid1.Cells[2,i+1]:=ComboBox1.Text;  
            form1.StringGrid1.Cells[3,i+1]:=ComboBox2.Text;  
            form1.StringGrid1.Cells[4,i+1]:=edit2.text;  
            form1.StringGrid1.Cells[5,i+1]:=edit3.text;  
            form1.StringGrid1.Cells[6,i+1]:=edit4.text;  
            i:=i+1;  
            form1.stringGrid1.Cells[0,i]:=intTostr(i+0);  
            form1.Show;-----------------------我改了这个,不知道你的意图何在?这样肯定是不会复盖了!  
  end;

NO.7   作者: sunxking

不知道你的保存过了是什么意思?  
  不过,一般操作stringgrid的话,每次show的时候最好都重写一次单元格。  
  你可以把要写的内容保存在数组里,文件里,甚至数据库里,show的时候再调出来,我一向都是这样做的。


 ·在linux不能启动windows    »显示摘要«
    摘要: 我的机子c盘装有windows2000server,e盘装有linux7.2,以前选择dos的时候可以启动windwos2000现在却不可以了,显示ntldr is missing,是什么原因???? ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE