Table->MoveBy()?
用了Table->MoveBy()方法,除移动光标外,怎么把数据库的记录的内容也改了? 问题点数:25、回复次数:17Top
1 楼gloom(苍狗白云)回复于 2001-08-14 16:40:04 得分 0
你是想问怎么改记录还是说Table不正常地修改除外的记录???Top
2 楼sincostan()回复于 2001-08-14 16:54:31 得分 0
我只想移动光标不想修改记录
(用Table->Next()觉得有点麻烦)Top
3 楼gloom(苍狗白云)回复于 2001-08-14 17:31:28 得分 0
不会吧?是不是触发了其它的事件?Top
4 楼yeqiufeng(叶秋枫)回复于 2001-08-14 17:39:33 得分 0
移动记录是要保存当前编辑的数据的
你的意思是移动记录而界面上不变
解决的办法是去掉控件是数据库的关联
移动完毕再连接上
谁有好的办法 欢迎讨论啊
@_@Top
5 楼sincostan()回复于 2001-08-14 20:12:28 得分 0
我想当DBComboBox1显示第几条
DBGrid的光标就指到第几条记录.
注意: 但不能修改数据库记录
主要是DBComboBox1Change事件的
编码.我用MoveBy( )老出问题
void __fastcall TForm1::DBComboBox1Change(TObject *Sender)
{
int i = DBComboBox1->Items->IndexOf( DBComboBox1->Text); //Items已经初始化好了
ShowMessage( DBComboBox1->Text );
if( !Table1->IsEmpty() )
{
Table1->First();
Table1->MoveBy(i);
}
(把NAME字段的内容给改了).
谢谢指正!Top
6 楼whitelion(www.ccproj.com)回复于 2001-08-14 20:23:12 得分 0
upTop
7 楼nofeal(无情)回复于 2001-08-14 20:54:12 得分 0
up~Top
8 楼nofeal(无情)回复于 2001-08-14 20:54:24 得分 0
up~Top
9 楼nofeal(无情)回复于 2001-08-14 20:58:52 得分 0
up~Top
10 楼twotrees(两棵树)回复于 2001-08-14 21:27:52 得分 0
帮你upTop
11 楼sincostan()回复于 2001-08-15 08:31:21 得分 0
for(;;)
{ cout<<"thanks";
}Top
12 楼gqxs(我心㊣飞翔)回复于 2001-08-15 08:44:07 得分 0
upTop
13 楼TR@SOE()回复于 2001-08-15 09:28:37 得分 10
你的DBComboBox连接的是哪个字段?如果它不和任何数据库连接,那么就不要用DBComboBox了。Top
14 楼ALNG(?)回复于 2001-08-15 09:42:43 得分 10
TR@SOE说对了,
你这样做肯定会改变当前纪录的值。应该用ComboBox.Top
15 楼sincostan()回复于 2001-08-15 09:52:54 得分 0
恍然大悟!!!
抓紧试试!Top
16 楼sincostan()回复于 2001-08-15 10:02:49 得分 0
搞定!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
万分感谢!!!!!
我还注意到在DBGrid左侧的光标显示是不一样的.用DBComboBox时显示"I"形光标
用ComboBox时显示黑实三角(正确)
不知"I"形光标指示何状态?
至少楼上两位分得定了!
Top
17 楼dingzhenhhy(霸王龙)回复于 2001-08-15 10:44:20 得分 5
当你改变DBComboBox内容时意味着你修改了当前记录中和DBComboBox相联的字段,至于光标形状可以设定“I”型一般都是标示可以输入Top




