我在DBGIRD中打开了一个空表,例如有两个字段 “学号”,“姓名”我想实现 输入一个记录后此记录就不能更改了,但可以添加另一条记录。如:我输入第一条记录后,点击一个自建的“添加”botton,该记录就写入了,
但此后就不允许更改了!!并且记录光标自动下移一行,出现一个空白的行用于第二个记录的输入,怎么实现那
但此后就不允许更改了!!并且记录光标自动下移一行,出现一个空白的行用于第二个记录的输入,怎么实现那
解决方案 »
- 请教~~~!
- 请问如何调用这个c++编写的dll
- 如何改变控件的类名
- 俺这个公司的一个项目就要开始了,而我要辞职,是不是很无情?
- QuickReport组中的报表控件QRRichEdit,怎样设置行距和字符间距?
- 小妹子有一问题不明白:dll中能放QUERY等控件不?如果可以,如何把查询的结果传到程序中的dbgrid中?
- 关于数据集合并的问题。。。。
- 关于一次多项输入的用什么空间啊,用DBGRID还是STRINGRID啊?
- 请问在NT中有没有类似RegisterServiceProcess的函数?请详细解答,谢谢。
- 程序如何是现带参数运行
- 求助!!
- 如何在DBGRID中实现如下的功能那(关于按键响应)
"不点击就不让他添加"那是不是我点击就可以添加,那是不是 还是可以进行已输入记录的修改?我是想不修改以前的记录了,行吗?
控制:
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
if adoTable1xh.AsInteger >0 then
begin dbgrid1.ReadOnly :=true;
end
else dbgrid1.readonly:=false ;
end;
给分吧!谢谢!
更正一下:procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
if adoTable1bs.AsInteger >0 then
begin dbgrid1.ReadOnly :=true;
end
else dbgrid1.readonly:=false ;
end;
对不起!
什么意思
begin
DataSet.FieldByName('字段名称').ReadOnly := false;//所有要控制的字段全设置一次
end
else
begin
DataSet.FieldByName('字段名称').ReadOnly := True;//所有要控制的字段全设置一次
end
此句的意思是判断表示字段的值是否为1,如为1表示此记录已经提交不可以修改!
adotable1bs相当于adotable1.fieldbyname(bs),明白了吗?