delphi 中cxverticalgrid怎么判断用户在int型的字段里输入string型的信息。如果是string型就提示:

[复制链接]
查看11 | 回复2 | 2011-11-3 07:08:01 | 显示全部楼层 |阅读模式
‘请输入数字’,并且把该行清空。代码:procedureTForm1.FormCreate(Sender:TObject);beginwithadoquery1dobeginClose;sql.Clear;SQL.Text:=(\'select*fromXX\');Open;cxVerticalGrid1EditorRow1.Properties.Value:=fieldbyname(\'stu\').AsString;cxVerticalGrid1EditorRow2.Properties.Value:=fieldbyname(\'year\').AsString;cxVerticalGrid1EditorRow3.Properties.Value:=fieldbyname(\'sex\').AsString;cxVerticalGrid1EditorRow4.Properties.Value:=fieldbyname(\'gl\').AsString;Exit;end;end;procedureTForm1.Button1Click(Sender:TObject);beginwithADOQuery1dobegintryClose;SQL.Clear;SQL.Text:=(\'select*fromXX\');Open;Edit;FieldByName(\'stu\').AsString:=cxVerticalGrid1EditorRow1.Properties.Value;FieldByName(\'year\').AsString:=cxVerticalGrid1EditorRow2.Properties.Value;FieldByName(\'sex\').AsString:=cxVerticalGrid1EditorRow3.Properties.Value;FieldByName(\'gl\').AsString:=cxVerticalGrid1EditorRow4.Properties.Value;Post;ShowMessage(\'OK\');exceptShowMessage(\'请输入数字\');cxVerticalGrid1EditorRow2.Properties.Value:=\'\';cxVerticalGrid1EditorRow4.Properties.Value:=\'\';end;end;其中,year和gl字段是int型的。问题是:无论我在row2或者row4输入string都会2行一起清空。请问下该怎么改。
回复

使用道具 举报

千问 | 2011-11-3 07:08:01 | 显示全部楼层
你没有判断上边是ROW2还是ROW4里边是STRING,下边直接就把ROW2和ROW4都清了...当然是什么情况下都会两行一起清.....给showmessage(\'请输入数字\')下边加判断.追问怎么加啊我菜鸟哦,提示下谢谢
回复

使用道具 举报

千问 | 2011-11-3 07:08:01 | 显示全部楼层
你create的时候执行的cxVerticalGrid1EditorRow2.Properties.Value:=fieldbyname(\'year\').AsString;这让cxVerticalGrid1EditorRow2.Properties.Value就是string型的...你只能判断他里边有没有a-Z了!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行