当DBGRID处于编辑状态时,如何判断指定的CELL不为空,如果为空的话怎样让那CELL获得焦点
解决方案 »
- delphi TDecisionGrid 里面无数据 在报表中有数据(Fastreport) ????
- 300 分求 内存表 kbmMemTable 问题
- 句柄问题
- 改写一个有关com的程序 发现'type information missing for class TAxxxx'这是啥原应?
- 请问: “cg1120(代码最优化-§惟坚韧者始能遂其志§)”,“jinjazz(近身剪(N-P攻略)) ”两位高手:
- 怎样在程序中调用chm帮助文件?
- 系统规划级的困惑,欢迎讨论,顺便散分
- 如何获取工程中所有的窗口
- 怎样枷锁《开始》(WIN)按键、Del+Ctrl+Alt键
- 请赐招:能有办法绕开SMTP的身份验证吗?
- 一个图表chart操作奇怪的问题!高手请进!
- 关于指针释放的问题,请教大家
begin
if DBGrid1.Columns.Items[DBGrid1.SelectedIndex].Field.IsNull then Abort;
end;
判定了为空,然后怎样获得焦点?拜托,解决了就给分啦
procedure TForm1.DBGrid1ColExit(Sender: TObject);
begin
if DBGrid1.Columns.Items[DBGrid1.SelectedIndex].Field.IsNull then DBGrid1.SetFocus;
end;
if ADOQuery1.FieldByName('FIELDNAME').IsNull then
begin
DBGrid1.SelectedIndex:=2; //光标定位到当前记录第3个单元格
Abort;
end
当然,由于DBGRID的列是可以拖动的,所以在实际应用中得循环控制判断到底是那一列是不为空的列2.通过设置数据库字段属性不为空,然后在数据表的OnPoseError时间中提示
其实系统会提示,你只是要把提示信息改成自己的而已3.在DBGrid的OnColExit事件中添加代码
if DBGrid1.Columns.Items[DBGrid1.SelectedIndex].Field.IsNull then Abort;
光标默认停留在当前空列,这种方法得控制用户在当前列上下移动光标的情况,实际中很难控制推荐第一种方式,从最原始的地方进行控制