IB6.5的问题,请帮帮忙,谢谢!
nnlyc 2003-01-31 10:52:07 Project aa.exe raised exception class EIBInterBaseError with message 'arithetic exception,numeric overflow,or string truncation Cannot transliterate character between character sets'.
在运行主表单时弹出一个对话框,用户编号自动检出显示在DBComboBox里,现要求用户名在改变用户编号时相应地自动改变,然后输入密码显示主表单。但在改变用户编号时弹出的对话框显示以上信息,这个问题怎么解决?
void __fastcall TfrmLogin::FormCreate(TObject *Sender)//frmLogin是以ShowModal方式显示的
{
Edit1->Clear();//Edit1为密码输入框
IBTable1->Open();
IBTable1->First();
while(!IBTable1->Eof)
{
//Dbcb为DBComboBox
Dbcb->Items->Add(IBTable1->FieldByName("EMPID")->AsString);
IBTable1->Next();
}
Dbcb->ItemIndex=0;
IBTable1->First();
}
void __fastcall TfrmLogin::DbcbChange(TObject *Sender)
{
i=Dbcb->ItemIndex+1;
IBTable1->MoveBy(i-IBTable1->RecNo);
//Edit2用来显示用户名
Edit2->Text=IBTable1->FieldByName("NAME")->AsString;
}
void __fastcall TfrmLogin::btnOkClick(TObject *Sender)
{
if(IBTable1->FieldByName("SN")->AsString==Edit1->Text)
frmMain->Visible=true;//此处提示找不到主表单frmMain
}