7.23-7.29 学习三维动画的制作
创建了游戏场景中的 桥 椅子 教室 以及公园中的柱子
7.30 上午
创建成功了登陆界面
学会运用了 vc.net 的帮助文档很好用的 制作 比卡丘.icon的图标
下午
创建学习
所需要的 三维动画中的 医院 超市等建筑
7.31
设计zhuce所需要的界面
8.1
把社区的思路整理清楚
8.8
数据库的连接 我采用了 ole db的做法,虽然可以实现查询但是登陆功能还是不能实现的
private: System::Void button1_Click(System::Object * sender, System::EventArgs * e)
{ oleDbDataAdapter1->SelectCommand->Parameters->Item[S"username"]->Value = textBox1->Text;
dsuserpass1->Clear();
if (textBox2->Text==oleDbDataAdapter1->Fill(dsuserpass1))
{
Form1::notifyIcon1->Visible=true;
Form1::Visible=false;
}
}
8.9--8.18
连接数据库 //实现的是数据库的查询工作,把查到的数据显示在label中
this->oleDbDataAdapter1->SelectCommand->Parameters->Item[S"username"]->Value=strusername;
dataSet21->Clear();
this->oleDbDataAdapter1->Fill(dataSet21);
this->label1->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petname"]->ToString();
this->label2->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petuser"]->ToString();
this->label3->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petgrow"]->ToString();
this->label4->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petbirthday"]->ToString();
this->label5->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petsex"]->ToString();
//实现的是插入数据库的操作
oleDbConnection1->Open();
try{
oleDbDataAdapter1->InsertCommand->Parameters->Item[0]->Value=textBox1->Text;//用户名
oleDbDataAdapter1->InsertCommand->Parameters->Item[1]->Value=textBox2->Text;//密码
if(String::Compare(textBox3->Text,textBox2->Text)!=0)//检验用户密码
{ MessageBox::Show(this,"输入确认密码不正确","注册用户");
textBox3->Text="";
textBox2->Text="";
oleDbConnection1->Close();
}
oleDbDataAdapter1->InsertCommand->Parameters->Item[2]->Value=textBox4->Text;//邮箱
oleDbDataAdapter1->InsertCommand->Parameters->Item[3]->Value=textBox5->Text;//昵称
oleDbDataAdapter1->InsertCommand->Parameters->Item[4]->Value=textBox6->Text;//称呼
if(radioButton1->Checked==true)//选择性别
oleDbDataAdapter1->InsertCommand->Parameters->Item[5]->Value=radioButton1->Text;
else
if (radioButton2->Checked==true)
oleDbDataAdapter1->InsertCommand->Parameters->Item[5]->Value=radioButton2->Text;
else
{MessageBox::Show(this,"没有选择性别""注册用户");
oleDbConnection1->Close();
}
oleDbDataAdapter1->InsertCommand->Parameters->Item[6]->Value=dateTimePicker1->Text;
oleDbDataAdapter1->InsertCommand->ExecuteNonQuery();
oleDbConnection1->Close();
}
catch(Exception* e){
MessageBox::Show(S"请重新填写","注册用户");
}
MessageBox::Show(S"注册成功","注册用户");
}
//数据库的更新
try{
this->oleDbDataAdapter1->UpdateCommand->Parameters->Item["Original_username"]->Value=strusername;//取的参数值
dataSet21->Clear();
this->oleDbDataAdapter1->Fill(dataSet21,"userpass");
System::Data::DataRow* crow=dataSet21->Tables->Item[0]->Rows->Item[0];
if((textBox1->Text=="")||(textBox2->Text==""))
MessageBox::Show(S"不允许为空","更新信息");
else{
crow->Item[S"petname"]=textBox1->Text;
crow->Item[S"petuser"]=textBox2->Text;
oleDbDataAdapter1->Update(dataSet21,"userpass");
MessageBox::Show(S"更新成功","更新信息");
}
}
catch(Exception* e){
MessageBox::Show(e->Message);
8.22 }
我们宠物资料
我对VC.NET数据转换的一些心得 当然有同组的同学的帮助
System::convert::tostring
todouble
toint
toint(16,32,64)
偶然间我发现了还要有更好的办法,但是局限性有点差
比如:
double pet_grow
我现在要把 他变成我所需要的 string传到数据库中去,可以这样 pet_grow.tostring
但是在有的数据中就会有不同的小麻烦
//查询数据库,从数据库读出宠物上次下线时候的状态信息
label11->Text=dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petname"]->ToString();
level = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petclass"]->ToString());
clean_now =System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petclear"]->ToString());
hunger_now =System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"pethunger"]->ToString());
health_now = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"pethealthy"]->ToString());
mood_now = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petmoon"]->ToString());
play = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petplay"]->ToString());
age = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petgrow"]->ToString());