《Visual C# NET案例教程》課件第12章_第1頁(yè)
《Visual C# NET案例教程》課件第12章_第2頁(yè)
《Visual C# NET案例教程》課件第12章_第3頁(yè)
《Visual C# NET案例教程》課件第12章_第4頁(yè)
《Visual C# NET案例教程》課件第12章_第5頁(yè)
已閱讀5頁(yè),還剩134頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第12章圖書(shū)管理系統(tǒng)開(kāi)發(fā)實(shí)例

12.1圖書(shū)管理系統(tǒng)簡(jiǎn)介12.2圖書(shū)管理系統(tǒng)主要模塊12.3安裝程序制作12.4習(xí)題圖書(shū)管理系統(tǒng)廣泛應(yīng)用于學(xué)校、企業(yè)、事業(yè)等單位,提供包括讀者信息管理、圖書(shū)信息管理、用戶信息管理、借還書(shū)、報(bào)表顯示和綜合查詢等功能。圖書(shū)管理系統(tǒng)的功能如圖12-1所示。12.1圖書(shū)管理系統(tǒng)簡(jiǎn)介圖12-1系統(tǒng)功能模塊圖12.2.1公用類(lèi)

公用類(lèi)的代碼如下:12.2圖書(shū)管理系統(tǒng)主要模塊usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

usingSystem.Data;

usingSystem.Data.SqlClient;

usingSystem.Windows.Forms;

namespaceBook

{

classCommon

{

//清空容器控件container(如groupbox、panel控件)里的編輯框

publicstaticvoidclear(Controlcontainer)

{foreach(Controlctrincontainer.Controls)

{

if(ctrisTextBox)

{

(ctrasTextBox).Text="";

}

}

}

//使控件容器內(nèi)的所有控件disable

publicstaticvoiddisableControl(Controlcontainer)

{

foreach(Controlctrincontainer.Controls)

{if(!(ctrisLabel))

ctr.Enabled=false;

}

}

//使控件容器內(nèi)的所有控件enable

publicstaticvoidenableControl(Controlcontainer)

{

foreach(Controlctrincontainer.Controls)

{

if(!(ctrisLabel))

ctr.Enabled=true;

}

}

publicstaticvoidIsDigit(KeyPressEventArgse)//判斷按下的是否為數(shù)字鍵

{

if((e.KeyChar!=8&&!char.IsDigit(e.KeyChar))&&e.KeyChar!=13)

{

MessageBox.Show("請(qǐng)輸入數(shù)字");

e.Handled=true;

}

}

//功能:驗(yàn)證用戶是否合法

//參數(shù)userName;用戶名pwd;口令

//合法用戶返回true,否則返回false

publicstaticboolvalidate(StringuserName,Stringpwd)

{

stringsql="selectPWDfromuserswhereusername=@userName";

SqlParameter[]param=newSqlParameter[1];

param[0]=newSqlParameter("@userName",SqlDbType.VarChar);

param[0].Value=userName;

DBHelperhelper=newDBHelper();

SqlDataReaderreader=helper.GetReader(sql,param);

try

{

if(reader.Read()&&reader.GetString(0)==pwd)

{

returntrue;

}

else

{

returnfalse;

}

}

finally

{

reader.Close();

}

}

}

}12.2.2系統(tǒng)主窗體

系統(tǒng)采用MDI窗體界面,主窗體界面如圖12-2所示。圖12-2系統(tǒng)主窗體主窗體的代碼如下:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

namespaceBook

{

publicpartialclassFrmMain:Form

{

publicstaticstringuserName;

publicstaticstringpassword;publicFrmMain()

{

InitializeComponent();

}

privatevoid讀者信息ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(!isExist("FrmReader"))

{

FrmReaderfrm=newFrmReader();

frm.MdiParent=this;

frm.Show();

}}

privatevoid圖書(shū)信息ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(!isExist("FrmBook"))

{

FrmBookfrm=newFrmBook();

frm.MdiParent=this;

frm.Show();

}

}

privatevoid借書(shū)ToolStripMenuItem_Click(objectsender,EventArgse)

{if(!isExist("FrmBorrow"))

{

FrmBorrowfrm=newFrmBorrow();

frm.MdiParent=this;

frm.Show();

}

}

privatevoid還書(shū)ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(!isExist("FrmReturn"))

{

FrmReturnfrm=newFrmReturn();

frm.MdiParent=this;

frm.Show();}

}

privatevoidfrmMain_Load(objectsender,EventArgse)

{

tssLabel1.Text="當(dāng)前用戶:"+userName;

}

boolisExist(stringfrmName)//判斷名為frmName的窗體是否已存在

{

foreach(FormfrminMdiChildren)

{

if(frm.Name==frmName)

{

frm.BringToFront(); //把窗體放到前面顯示

returntrue;}

}

returnfalse;

}

privatevoid水平平鋪ToolStripMenuItem_Click(objectsender,EventArgse)

{

LayoutMdi(MdiLayout.TileHorizontal);

}

privatevoid垂直平鋪ToolStripMenuItem_Click(objectsender,EventArgse)

{

LayoutMdi(MdiLayout.TileVertical);}

privatevoid層疊ToolStripMenuItem_Click(objectsender,EventArgse)

{

LayoutMdi(MdiLayout.Cascade);

}

privatevoid關(guān)閉當(dāng)前窗口ToolStripMenuItem1_Click(objectsender,EventArgse)

{

ActiveMdiChild.Close();

}

privatevoid全部關(guān)閉ToolStripMenuItem1_Click(objectsender,EventArgse){

foreach(FormfrminMdiChildren)

{

frm.Close();

}

}

privatevoid修改口令ToolStripMenuItem_Click(objectsender,EventArgse)

{

FrmChangePWDfrmChangePWD=newFrmChangePWD();

frmChangePWD.ShowDialog();

}

privatevoid圖書(shū)類(lèi)別維護(hù)ToolStripMenuItem_Click(objectsender,EventArgse){

FrmReaderTypefrmReaderType=newFrmReaderType();

frmReaderType.ShowDialog();

}

privatevoid備份ToolStripMenuItem_Click(objectsender,EventArgse)

{

FrmBackupfrm=newFrmBackup();

frm.ShowDialog();

}

privatevoid借閱排行ToolStripMenuItem_Click(objectsender,EventArgse)

{

FrmBorrowSortfrm=newFrmBorrowSort();

frm.ShowDialog();

}

privatevoid恢復(fù)ToolStripMenuItem_Click(objectsender,EventArgse)

{

FrmRestorefrm=newFrmRestore();

frm.ShowDialog();

}

privatevoid關(guān)于ToolStripMenuItem_Click(objectsender,EventArgse)

{

FrmAboutfrm=newFrmAbout();

frm.ShowDialog();

}

privatevoid超期書(shū)ToolStripMenuItem_Click(objectsender,EventArgse)

{

FrmExpiredfrm=newFrmExpired();

frm.ShowDialog();

}

}

}12.2.3用戶登錄

用戶登錄模塊提供用戶的登錄功能,窗體如圖12-3所示。圖12-3用戶登錄單擊“登錄”按鈕的代碼如下:

privatevoidbtnLogin_Click(objectsender,EventArgse)

{

stringsql="select口令from用戶表where用戶名=@userName";

SqlParameter[]param=newSqlParameter[]{newSqlParameter

("@userName",SqlDbType.VarChar)};

param[0].Value=txtUserName.Text;

DBHelperhelper=newDBHelper();

SqlDataReaderreader=helper.GetReader(sql,param);

try

{

if(reader.Read()&&reader["口令"].ToString()==txtPWD.Text)

{FrmMain.userName=txtUserName.Text;//用靜態(tài)變量保存用戶名

FrmMain.password=txtPWD.Text; //用靜態(tài)變量保存口令

this.DialogResult=DialogResult.OK; //關(guān)閉窗口,并返回DialogResult.OK

}

else

{

MessageBox.Show("登錄失??!");

}

}

finally

{

reader.Close();

}

}登錄窗體在系統(tǒng)啟動(dòng)時(shí)創(chuàng)建,啟動(dòng)文件Program.cs的代碼如下:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Windows.Forms;

namespaceBook

{

staticclassProgram

{

///<summary>

///應(yīng)用程序的主入口點(diǎn)

///</summary>

[STAThread]

staticvoidMain(){

Application.EnableVisualStyles();

Application.SetCompatibleTextRenderingDefault(false);

FrmLoginfrm=newFrmLogin();

DialogResultresult=frm.ShowDialog();

//在顯示主窗體前打開(kāi)登錄窗體根據(jù)返回值判斷登錄是否成功

if(result==DialogResult.OK) //登錄成功

Application.Run(newFrmMain()); //創(chuàng)建主窗體

}

}

}12.2.4讀者信息維護(hù)

讀者信息模塊提供對(duì)讀者信息的增加、刪除與修改功能。讀者信息窗體界面如圖12-4所示。圖12-4讀者信息讀者信息窗體的主要代碼如下:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Data.SqlClient;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

namespaceBook

{

publicpartialclassFrmReader:Form

{

stringflag="";stringsql="";

publicFrmReader()

{

InitializeComponent();

}

privatevoidFrmReader_Load(objectsender,EventArgse)

{

tsbCancel.Enabled=false;

tsbSave.Enabled=false;

cbxSex.Items.Add("男");

cbxSex.Items.Add("女");

DBHelperdbHelp=newDBHelper();cbxType.DataSource=dbHelp.GetDataSet("SELECT*FROM讀者類(lèi)別表").Tables[0];

cbxType.DisplayMember="讀者類(lèi)別名";

cbxType.ValueMember="讀者類(lèi)別編號(hào)";

bind();

Common.disableControl(panel1);

}

//綁定數(shù)據(jù)到dataGridView1

voidbind()

{

DBHelperdbHelp=newDBHelper();

dataGridView1.AutoGenerateColumns=true;

if(sql=="")dataGridView1.DataSource=dbHelp.GetDataSet("select*fromv_reader").Tables[0];

else

{

SqlParameter[]param=newSqlParameter[]{newSqlParameter("@name","%"+textBox1.Text+"%")};

dataGridView1.DataSource=dbHelp.GetDataSet(sql,param).Tables[0];

}

if(dataGridView1.RowCount>0)

fill();

}

//單擊“增加”按鈕privatevoidtsbAdd_Click(objectsender,EventArgse)

{

tsbAdd.Enabled=false;

tsbEdit.Enabled=false;

tsbDelete.Enabled=false;

tsbCancel.Enabled=true;

tsbSave.Enabled=true;

dataGridView1.Enabled=false;

dataGridView1.ForeColor=Color.Gray;

Common.enableControl(panel1);

Common.clear(panel1);

flag="add";

}

//單擊“刪除”按鈕privatevoidtsbDelete_Click(objectsender,EventArgse)

{

DBHelperdbHelp=newDBHelper();

dbHelp.ExecuteCommand("delete讀者表where讀者編號(hào)="+dataGridView1.CurrentRow.Cells["讀者編號(hào)"].Value.ToString());

bind();

}

//單擊“編輯”按鈕

privatevoidtsbEdit_Click(objectsender,EventArgse)

{

tsbAdd.Enabled=false;

tsbEdit.Enabled=false;

tsbDelete.Enabled=false;

tsbCancel.Enabled=true;tsbSave.Enabled=true;

dataGridView1.Enabled=false;

dataGridView1.ForeColor=Color.Gray;

Common.enableControl(panel1);

flag="edit";

}

//單擊“取消”按鈕

privatevoidtsbCancel_Click(objectsender,EventArgse)

{

tsbAdd.Enabled=true;

tsbEdit.Enabled=true;

tsbDelete.Enabled=true;

tsbCancel.Enabled=false;tsbSave.Enabled=false;

dataGridView1.Enabled=true;

dataGridView1.ForeColor=Color.Black;

Common.disableControl(panel1);

fill();

flag="";

}

//單擊“保存”按鈕

privatevoidtsbSave_Click(objectsender,EventArgse)

{

stringsql;

DBHelperdbHelp=newDBHelper();

if(flag=="add")

{sql="INSERTINTO讀者表(借書(shū)證號(hào),姓名,性別,部門(mén),讀者類(lèi)別編號(hào))

VALUES(@card,@name,@sex,@depart,@readerTypeNO)";

SqlParameter[]param=newSqlParameter[]{

newSqlParameter("card",txtCard.Text),

newSqlParameter("name",txtName.Text),

newSqlParameter("sex",cbxSex.Text),

?newSqlParameter("name",txtName.Text),

?newSqlParameter("depart",txtDepart.Text),

?newSqlParameter("readerTypeNO",cbxType.

SelectedValue)

};

dbHelp.ExecuteCommand(SQL,param);MessageBox.Show("成功增加一條記錄");

bind();

Common.clear(panel1);

}

elseif(flag=="edit")

{

sql="UPDATE讀者表SET借書(shū)證號(hào)=@card,姓名=@readerName,性別=@sex,部門(mén)=@depart,讀者類(lèi)別編號(hào)=@readerTypeNOWHERE讀者編號(hào)=@readerNO";

SqlParameter[]param=newSqlParameter[]{

newSqlParameter("card",txtCard.Text),

newSqlParameter("readerName",txtName.Text),

newSqlParameter("sex",cbxSex.Text),newSqlParameter("name",txtName.Text),

newSqlParameter("depart",txtDepart.Text),

newSqlParameter("readerTypeNO",cbxType.

SelectedValue),

newSqlParameter("readerNO",dataGridView1.

CurrentRow.Cells["讀者編號(hào)"].Value.ToString()

)

};

dbHelp.ExecuteCommand(SQL,param);

MessageBox.Show("記錄修改成功!");

bind();

tsbCancel_Click(null,null);

}

}//用dataGridView1中當(dāng)前行的內(nèi)容填充各相應(yīng)的編輯框

voidfill()

{

//txtCard.Text=dataGridView1.CurrentRow.Cells["借書(shū)證號(hào)"].Value.ToString();

txtCard.Text=dataGridView1.CurrentRow.Cells[1].Value.ToString();

//txtName.Text=dataGridView1.CurrentRow.Cells["姓名"].Value.ToString();

txtName.Text=dataGridView1.CurrentRow.Cells[2].Value.ToString();

cbxSex.SelectedIndex=cbxSex.Items.IndexOf(dataGridView1.CurrentRow.Cells["性別"].Value.ToString());

txtDepart.Text=dataGridView1.CurrentRow.Cells["部門(mén)"].Value.ToString();

cbxType.SelectedValue=dataGridView1.CurrentRow.Cells["讀者類(lèi)別編號(hào)"].Value.ToString();

}

//單擊dataGridView1的單元格

privatevoiddataGridView1_CellClick(objectsender,DataGridViewCellEventArgse)

{

fill();

}

//單擊“查找”按鈕

privatevoidbtnSearch_Click(objectsender,EventArgse)

{

sql="select*fromv_readerwhere姓名like@name";

bind();

}

}

}12.2.5圖書(shū)信息維護(hù)

圖書(shū)信息維護(hù)模塊提供對(duì)圖書(shū)信息的增加、刪除與修改功能。圖書(shū)信息維護(hù)窗體界面如圖12-5所示。圖12-5圖書(shū)信息維護(hù)圖書(shū)信息維護(hù)窗體的代碼如下:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Data.SqlClient;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

namespaceBook

{

publicpartialclassFrmBook:Form

{stringflag="";//狀態(tài)標(biāo)志,值取edit與add分別表示當(dāng)前為編輯與增加狀態(tài)

stringsql="";

publicFrmBook()

{

InitializeComponent();

}

privatevoidFrmBook_Load(objectsender,EventArgse)

{

tsbCancel.Enabled=false;

tsbSave.Enabled=false;

comboBox1.Items.Clear();

comboBox1.Items.Add("按書(shū)名");comboBox1.Items.Add("按作者");

comboBox1.SelectedIndex=0;

panel3.BringToFront();

bind();

disableControl();

}

voidbind()

{

DBHelperdbHelp=newDBHelper();

dataGridView1.AutoGenerateColumns=true;

if(sql=="")

dataGridView1.DataSource=dbHelp.GetDataSet("select*from圖書(shū)表").Tables[0];else

{

SqlParameter[]param=newSqlParameter[]{newSqlParameter("@key","%"+textBox1.Text+"%")};

dataGridView1.DataSource=dbHelp.GetDataSet(sql,param).Tables[0];

}

if(dataGridView1.RowCount>0)

fill();

}

privatevoidtsbAdd_Click(objectsender,EventArgse)

{

tsbAdd.Enabled=false;tsbEdit.Enabled=false;

tsbDelete.Enabled=false;

tsbCancel.Enabled=true;

tsbSave.Enabled=true;

dataGridView1.Enabled=false;

dataGridView1.ForeColor=Color.Gray;

Common.enableControl(panel1);

Common.clear(panel1);

flag="add";

}

privatevoiddisableControl()

{

foreach(Controlctrinpanel1.Controls)

{if(!(ctrisLabel))

ctr.Enabled=false;

}

}

privatevoidtsbDelete_Click(objectsender,EventArgse)

{

try

{

if(MessageBox.Show("確定要?jiǎng)h除該圖書(shū)嗎?","提示",MessageBoxButtons.

OKCancel,MessageBoxIcon.Question)==DialogResult.OK)

{DBHelperdbHelp=newDBHelper();

dbHelp.ExecuteCommand("delete圖書(shū)表where圖書(shū)編號(hào)="CurrentRow.Cells["圖書(shū)編號(hào)"].Value.ToString());

bind();

MessageBox.Show("刪除數(shù)據(jù)成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);

}

}

catch(Exceptionex)

{

MessageBox.Show(ex.Message,"提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Information);

}

}

privatevoidtsbEdit_Click(objectsender,EventArgse)

{

tsbAdd.Enabled=false;

tsbEdit.Enabled=false;

tsbDelete.Enabled=false;

tsbCancel.Enabled=true;

tsbSave.Enabled=true;

dataGridView1.Enabled=false;

dataGridView1.ForeColor=Color.Gray;

Common.enableControl(panel1);

flag="edit";}

privatevoidtsbCancel_Click(objectsender,EventArgse)

{

tsbAdd.Enabled=true;

tsbEdit.Enabled=true;

tsbDelete.Enabled=true;

tsbCancel.Enabled=false;

tsbSave.Enabled=false;

dataGridView1.Enabled=true;

dataGridView1.ForeColor=Color.Black;

disableControl();

fill();

flag="";

}privatevoidtsbSave_Click(objectsender,EventArgse)

{

stringsql;

DBHelperdbHelp=newDBHelper();

if(flag=="add")

{

sql="INSERTINTO圖書(shū)表(ISBN,書(shū)名,作者,價(jià)格,出版社,出版日期,庫(kù)存數(shù))

VALUES(@isbn,@bookName,@author,@price,@publisher,@pubDate,@qty)";

SqlParameter[]param=newSqlParameter[]{

newSqlParameter("isbn",txtISBN.Text),newSqlParameter("bookName",txtBookName.Text),

newSqlParameter("author",txtAuthor.Text),

newSqlParameter("price",txtPrice.Text),

newSqlParameter("publisher",txtPublisher),

newSqlParameter("pubDate",datePublisher.Value),

newSqlParameter("qty",txtQty.Text)};

dbHelp.ExecuteCommand(sql,param);

MessageBox.Show("成功增加一條記錄");

bind();

Common.clear(panel1);

}

elseif(flag=="edit")

{sql="UPDATE圖書(shū)表SETISBN=@isbn,書(shū)名=@bookName,

作者=@author,價(jià)格=@price,出版社=@publisher,出版日期

=@pubDate,庫(kù)存數(shù)=@qtyWHERE圖書(shū)編號(hào)

=@bookNO";

SqlParameter[]param=newSqlParameter[]{

newSqlParameter("isbn",txtISBN.Text),

newSqlParameter("bookName",txtBookName.Text),

newSqlParameter("author",txtAuthor.Text),

newSqlParameter("price",txtPrice.Text),

newSqlParameter("publisher",txtPublisher.Text),

newSqlParameter("pubDate",datePublisher.Value),

newSqlParameter("qty",txtQty.Text),

newSqlParameter("bookNO",dataGridView1.

CurrentRow.Cells["圖書(shū)編號(hào)"].Value.ToString())};

dbHelp.ExecuteCommand(sql,param);

MessageBox.Show("記錄修改成功!");

bind();

tsbCancel_Click(null,null);

}

}

voidfill()

{

txtISBN.Text=dataGridView1.CurrentRow.Cells["ISBN"].Value.ToString();txtBookName.Text=dataGridView1.CurrentRow.Cells["書(shū)名"].Value.ToString();

txtAuthor.Text=dataGridView1.CurrentRow.Cells["作者"].Value.ToString();

txtPrice.Text=dataGridView1.CurrentRow.Cells["價(jià)格"].Value.ToString();

txtPublisher.Text=dataGridView1.CurrentRow.Cells["出版社"].Value.ToString();

datePublisher.Value=Convert.ToDateTime(dataGridView1.CurrentRow.Cells

["出版日期"].Value.ToString());

txtQty.Text=dataGridView1.CurrentRow.Cells["庫(kù)存數(shù)"].Value.ToString();}

privatevoiddataGridView1_CellClick(objectsender,DataGridViewCellEventArgse)

{

fill();

}

privatevoidbtnSearch_Click(objectsender,EventArgse)

{

sql="SELECT*FROM圖書(shū)表where{0}like@key";

if(comboBox1.Text=="按書(shū)名")

{

sql=string.Format(sql,"書(shū)名");

}

else{

sql=string.Format(sql,"作者");

}

bind();

}

privatevoidtxtQty_KeyPress(objectsender,KeyPressEventArgse)

{

Common.IsDigit(e);

}

privatevoidtsbClose_Click(objectsender,EventArgse)

{

Close();

}

}

}12.2.6修改口令

修改口令模塊提供口令的修改功能,窗體如圖12-6所示。圖12-6修改口令修改口令窗體的主要代碼如下:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Data.SqlClient;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

namespaceBook

{

publicpartialclassFrmChangePWD:Form

{publicFrmChangePWD()

{

InitializeComponent();

}

privatevoidbutton1_Click(objectsender,EventArgse)

{

}

privatevoidbtnModify_Click(objectsender,EventArgse)

{

if(txtNewPWD1.Text!=txtNewPWD2.Text)

{

MessageBox.Show("兩次口令不一致!");

return;

}stringsql="select口令from用戶表where用戶名=@userName";

SqlParameter[]param=newSqlParameter[]{newSqlParameter

("@userName",FrmMain.userName)};

DBHelperhelper=newDBHelper();

SqlDataReaderreader=helper.GetReader(sql,param);

try

{

if(!reader.Read()||reader["口令"].ToString()!=txtOldPWD.Text)

{

MessageBox.Show("原口令錯(cuò)誤!");

return;

}

}

finally

{

reader.Close();

}

sql="update用戶表set口令=@PWDwhere用戶名=@userName";

param=newSqlParameter[]{

newSqlParameter("@PWD",txtNewPWD1.Text),

newSqlParameter("@userName",FrmMain.userName)

};

intret=helper.ExecuteCommand(sql,param);

if(ret>0){

MessageBox.Show("修改成功!");

}

else

{

MessageBox.Show("修改失??!");

}

}

privatevoidbtnCancel_Click(objectsender,EventArgse)

{

}

}

}12.2.7借書(shū)管理

借書(shū)管理模塊提供圖書(shū)借閱功能,窗體界面如圖12-7所示。圖12-7借書(shū)管理借書(shū)管理窗體的代碼如下:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Data.SqlClient;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

namespaceBook

{

publicpartialclassFrmBorrow:Form

{

publicFrmBorrow(){

InitializeComponent();

}

privatevoidgroupBox2_Enter(objectsender,EventArgse)

{

}

privatevoidFrmBorrow_Load(objectsender,EventArgse)

{

//初始化界面

txtReaderName.Enabled=false;

txtDepart.Enabled=false;

txtSex.Enabled=false;

txtReaderType.Enabled=false;//---------

txtBookName.Enabled=false;

txtAuthor.Enabled=false;

txtPublisher.Enabled=false;

txtPrice.Enabled=false;

datePublisher.Enabled=false;

//-----------

txtReaderName.BackColor=SystemColors.Info;

txtDepart.BackColor=SystemColors.Info;

txtSex.BackColor=SystemColors.Info;

txtReaderType.BackColor=SystemColors.Info;

//---------

txtBookName.BackColor=SystemColors.Info;txtAuthor.BackColor=SystemColors.Info;

txtPublisher.BackColor=SystemColors.Info;

txtPrice.BackColor=SystemColors.Info;

datePublisher.BackColor=SystemColors.Info;

dataGridView1.AllowUserToAddRows=false;

dataGridView1.ReadOnly=true;

}

privatevoidtxtCard_KeyDown(objectsender,KeyEventArgse)

{

//按下回車(chē)鍵時(shí)根據(jù)借書(shū)證號(hào)填充讀者信息

if(e.KeyCode==Keys.Enter)

{

stringsql="select*fromv_readerwhere借書(shū)證號(hào)=@cardID";SqlParameter[]param=newSqlParameter[]{newSqlParameter("@cardID",txtCard.Text)};

DBHelperdbHelp=newDBHelper();

DataTabledt=dbHelp.GetDataSet(sql,param).Tables[0];

if(dt.Rows.Count>0)

{

txtReaderName.Text=dt.Rows[0]["姓名"].ToString();

txtDepart.Text=dt.Rows[0]["部門(mén)"].ToString();

txtSex.Text=dt.Rows[0]["性別"].ToString();

txtReaderType.Text=dt.Rows[0]["讀者類(lèi)別名"].ToString();

bind(txtCard.Text);

}

else

{

txtCard.Focus();

MessageBox.Show("無(wú)此讀者");

}

}

}

//綁定顯示已借信息

privatevoidbind(stringcardID)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論