已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
學(xué) 號: X X大學(xué)課 程 設(shè) 計(jì)題 目移動基站遠(yuǎn)程監(jiān)控系統(tǒng)教 學(xué) 院計(jì)算機(jī)學(xué)院專 業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班 級姓 名指導(dǎo)教師2008年3月1日目 錄一 概述1二 總體方案設(shè)計(jì)3三 詳細(xì)設(shè)計(jì)7四 程序的調(diào)試與運(yùn)行結(jié)果說明22五 課程設(shè)計(jì)總結(jié)25參考文獻(xiàn)26一 概述1課程設(shè)計(jì)的目的數(shù)據(jù)庫是計(jì)算機(jī)學(xué)科中的一門很重要的基礎(chǔ)課程,而且數(shù)據(jù)庫設(shè)計(jì)是一門應(yīng)用性很強(qiáng)的學(xué)科,在學(xué)習(xí)時必須使理論與實(shí)踐相結(jié)合。數(shù)據(jù)庫課程設(shè)計(jì)是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)集中實(shí)踐性環(huán)節(jié)之一,是學(xué)習(xí)完數(shù)據(jù)庫系統(tǒng)概論課程后進(jìn)行的一次全面的綜合練習(xí)。通過本次課程設(shè)計(jì)要達(dá)到以下幾個目的:1加深學(xué)生對數(shù)據(jù)庫基礎(chǔ)理論和基本知識的理解,掌握數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計(jì)開發(fā)的基本方法,達(dá)到進(jìn)一步使學(xué)生綜合運(yùn)用所學(xué)知識和增強(qiáng)實(shí)際動手能力的目的。2通過實(shí)踐使同學(xué)們經(jīng)歷到一次綜合訓(xùn)練,以便能較全面地理解、掌握和綜合運(yùn)用所學(xué)的知識。3用所學(xué)的數(shù)據(jù)庫原理與程序設(shè)計(jì)的知識,能夠針對一個小型的數(shù)據(jù)庫管理系統(tǒng),進(jìn)行系統(tǒng)的需求分析,系統(tǒng)設(shè)計(jì),數(shù)據(jù)庫設(shè)計(jì),編碼,測試等,完成題目要求的功能,從而達(dá)到掌握開發(fā)一個小型數(shù)據(jù)庫的目的。4. 通過設(shè)計(jì)培養(yǎng)對工作認(rèn)真負(fù)責(zé)、一絲不茍的態(tài)度,對組員團(tuán)結(jié)互助,協(xié)作攻關(guān)的團(tuán)隊(duì)精神。5. 培養(yǎng)從資料文獻(xiàn)、科學(xué)實(shí)驗(yàn)中獲得知識并解決問題的能力。培養(yǎng)運(yùn)用理論去分析及處理問題的能力、實(shí)踐動手能力、書面及口頭表達(dá)能力。2課程設(shè)計(jì)的要求課程設(shè)計(jì)最主要的要求是在綜合應(yīng)用平時所學(xué)知識的基礎(chǔ)上,獨(dú)立設(shè)計(jì)與制造出具有較復(fù)雜功能的應(yīng)用系統(tǒng),并且在實(shí)驗(yàn)的基本技能方面上進(jìn)行一次全面的訓(xùn)練。其詳細(xì)要求如下:1由6名組員組成設(shè)計(jì)小組,小組成員分工協(xié)作完成。每人有自己相對獨(dú)立的模塊,同時要了解其他組員完成的內(nèi)容。2. 通過查閱相關(guān)資料,豐富自己的相關(guān)知識,解決相應(yīng)的問題。3. 所設(shè)計(jì)的應(yīng)用系統(tǒng)要準(zhǔn)確無誤,符合數(shù)據(jù)庫設(shè)計(jì)的要求,能夠詳細(xì)的分析該系統(tǒng),演示出運(yùn)行流程,并能按老師的要求做出相應(yīng)的改進(jìn)。4本次課程設(shè)計(jì)的實(shí)際內(nèi)容是構(gòu)建一個移動基站遠(yuǎn)程管理系統(tǒng)。以解決隨著移動基站數(shù)量的增多,移動基站的無人值守非常必要。所以要構(gòu)建一個數(shù)據(jù)庫系統(tǒng)來收集各個基站的各種信息傳輸?shù)娇刂婆_,計(jì)算機(jī)遠(yuǎn)程監(jiān)控能同時對多個基站進(jìn)行實(shí)時監(jiān)控。通過采集基站的內(nèi)部溫度、外部溫度、濕度、蓄電池電壓和是否斷電等影響基站正常工作的因素的數(shù)據(jù)形成一個數(shù)據(jù)庫,管理人員可以根據(jù)這些數(shù)據(jù)來判斷基站的工作是否正常。一旦出現(xiàn)異常情況管理人員就可以通知維護(hù)人員對基站進(jìn)行及時的修理避免造成更大的損失。另外,也可以通過軟件的方法來判斷基站的狀態(tài),并在基站異常時報(bào)警通知管理人員。這樣不僅可以減少管理員的工作量,也可以避免人工判斷失誤等情況的發(fā)生。從而大大地降低了移動基站的維護(hù)費(fèi)用,確保了基站設(shè)備的可靠性和安全性。二 總體方案設(shè)計(jì)本次數(shù)據(jù)庫課程設(shè)計(jì)是以SQL Server2000數(shù)據(jù)庫作為后臺以VB作為前臺的應(yīng)用型設(shè)計(jì)課程。我們要做的是移動基站系統(tǒng),這個軟件的基本功能是接收移動基站(下位機(jī))傳送的各種數(shù)據(jù)并且將這些數(shù)據(jù)在控制中心的PC機(jī)(上位機(jī))上顯示出來,從而達(dá)到監(jiān)控各個移動基站的目的。下面是具體要求:(1)使用VB編寫;(2)程序安裝后直接生成快捷方式;(3)雙擊快捷圖標(biāo)后進(jìn)入該程序。程序界面標(biāo)題為:“移動基站遠(yuǎn)程監(jiān)控系統(tǒng)”,背景可以選取一張淡顏色的照片。界面中下部有一對話框,要求輸入“用戶名”和“密碼”。(4)正確輸入用戶名和密碼后,即可進(jìn)入主界面。(5)“參數(shù)設(shè)置”菜單中包含“逐個設(shè)置”和“統(tǒng)一設(shè)置”兩個選項(xiàng)。單擊“參數(shù)設(shè)置”命令后,選擇“逐個設(shè)置”和“統(tǒng)一設(shè)置”此時可以對“設(shè)定溫度”進(jìn)行更改。選擇“統(tǒng)一設(shè)置”時,單擊“基站編號”旁邊的“下一個”和“上一個”按鈕,可以將基站編號順序增加或減少一個數(shù)字。選擇“逐個設(shè)置”時在“基站編號”欄顯示“全部”,更改設(shè)定溫度后,單擊設(shè)定溫度右側(cè)的“OK”按鈕,返回主界面。(6)“系統(tǒng)設(shè)置”菜單中有“添加用戶”、“更改密碼”、“添加基站”選項(xiàng)。(7)“顯示方式”菜單中有“全部循環(huán)顯示”、“僅顯示異?;尽薄ⅰ把h(huán)顯示間隔時間”、“顯示時間”三個選項(xiàng)。選擇“全部循環(huán)顯示”時,根據(jù)設(shè)置的“循環(huán)顯示間隔時間”,按照基站編號順序,循環(huán)顯示每個基站的狀況;選擇“僅顯示異?;尽睍r,根據(jù)設(shè)置的“循環(huán)顯示間隔時間”,循環(huán)顯示異?;镜臓顩r;(8)執(zhí)行“異常檢測”命令后,系統(tǒng)隨時統(tǒng)計(jì)出現(xiàn)異常情況的基站的數(shù)量,并循環(huán)顯示所有異?;镜臓顩r。(9)所有基站的參數(shù)通過一個文本文件輸入,改變文本文件的值,將改變基站的參數(shù)。(10)根據(jù)編程過程中出現(xiàn)的情況,自行決定菜單及界面的組織安排,只要能夠演示就行了。系統(tǒng)設(shè)計(jì):1. 系統(tǒng)功能設(shè)計(jì)移動基站遠(yuǎn)程監(jiān)控系統(tǒng)主要實(shí)現(xiàn)移動基站的集中監(jiān)控以及異常報(bào)警等功能,該系統(tǒng)主要功能模塊圖如圖3.1所示。移動基站遠(yuǎn)程監(jiān)控系統(tǒng)基站管理顯示方式設(shè)置數(shù)據(jù)統(tǒng)計(jì)功能用戶管理添加基站刪除基站修改基站循環(huán)顯示基站顯示異?;井惓;緮?shù)用戶登錄用戶注冊圖2.1 移動基站遠(yuǎn)程監(jiān)控系統(tǒng)功能模塊圖(1) 基站管理基站基站對象基本信息以及安全設(shè)定數(shù)據(jù)?;竟芾砟軌蛱砑釉诨颈碇刑砑踊騽h除一個基站和修改基站現(xiàn)有數(shù)據(jù)。(2) 顯示即監(jiān)控方式設(shè)定根據(jù)用戶需要可以循環(huán)顯示所有基站并能自行設(shè)定循環(huán)間隔時間,還能只顯示異?;?。(3) 數(shù)據(jù)統(tǒng)計(jì)統(tǒng)計(jì)異常基站的數(shù)目。(4) 用戶管理包括用戶注冊和用戶登錄認(rèn)證。這里用戶注冊時指軟件安裝在任何一臺機(jī)器上,程序會根據(jù)計(jì)算機(jī)物理設(shè)備編號(如硬盤號或網(wǎng)卡物理地址等)計(jì)算出一個唯一的機(jī)器碼,然后機(jī)器碼通過統(tǒng)一的數(shù)據(jù)變換生成注冊碼,變換方法根據(jù)加密的要求而采用不同的算法,達(dá)到軟件加密的目的。用戶只有正確的提供了機(jī)器碼和注冊碼才能登入到軟件系統(tǒng)。2.數(shù)據(jù)庫設(shè)計(jì)(1) 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)根據(jù)上面的設(shè)計(jì),所涉及的數(shù)據(jù)只有基站的設(shè)定信息和基站的實(shí)時信息。它們分別可以為一個實(shí)體:基站和基站當(dāng)前狀態(tài),分別如圖3.2和圖3.3所示基站基站編號基站名稱電池電壓安全溫度內(nèi)部濕度外部濕度停電異常圖2.2 基站實(shí)體基站基站編號基站名稱電池電壓安全溫度內(nèi)部濕度外部濕度停電圖2.3 異常基站實(shí)體用戶用戶ID用戶密碼用戶描述 圖2.4 用戶信息實(shí)體(2) 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)現(xiàn)在需要將上面的數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為SQL Server2000數(shù)據(jù)庫系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。在上面的實(shí)體基礎(chǔ)上,形成數(shù)據(jù)庫中的表。移動基站遠(yuǎn)程監(jiān)控系統(tǒng)數(shù)據(jù)庫中的各個表的設(shè)計(jì)如表2.1、表2.2和表2.3所示。每個表表示在數(shù)據(jù)庫中的一個數(shù)據(jù)表表2.1 base_info基站信息表2.2 abnormal_info異?;颈?.3 user_info用戶信息三 詳細(xì)設(shè)計(jì)1.數(shù)據(jù)庫的建立與設(shè)計(jì):通過SQL SERVER的企業(yè)管理器可以十分容易的建立后臺數(shù)據(jù)庫。2VB界面的建立設(shè)計(jì)以及程序的編寫說明:VB 是在Windows操作平臺下,用于開發(fā)和創(chuàng)建具有圖形用戶界面的應(yīng)用程序的強(qiáng)有力工具之一。VB為開發(fā)Windows應(yīng)用程序不僅提供了全新的相對簡單的方式,而且也引進(jìn)了新的程序設(shè)計(jì)方法面向?qū)ο蟮脑O(shè)計(jì)方法(00P)。從傳統(tǒng)的面向過程的程序設(shè)計(jì),轉(zhuǎn)移到更先進(jìn)的面向?qū)ο蟮某绦蛟O(shè)計(jì),無論是對老的程序員,還是初學(xué)者,都是一個挑戰(zhàn)。而學(xué)習(xí)VB,則是掌握這一新的程序設(shè)計(jì)方法的一條捷徑。(1).界面的設(shè)計(jì)和程序的編寫:frmLogin 用于登陸此系統(tǒng)的登錄界面frmMain 是主窗體,在這上面建立相應(yīng)的菜單主界面如:系統(tǒng)設(shè)置添加用戶(frmadduser)、刪除用戶(frmdeluser)、更改密碼(frmmodipwd)、添加基站(frmaddbase)、報(bào)警值(frmalarmtime)顯示方式全部循環(huán)顯示、僅顯示異?;?、循環(huán)顯示間隔時間(frminterval)、顯示時間(frmtime)關(guān)于(frmAbout)主界面代碼: Dim txtSQL As String Dim mrc As ADODB.Recordset Dim MsgText As String Dim rcount As Integer Dim abcont As Integer Dim flag As IntegerPrivate Sub abnormity_Click() Dim txtSQL1 As String Dim mrc1 As ADODB.Recordset Dim MsgText1 As String txtSQL = select * from base_Info Set mrc = ExecuteSQL(txtSQL, MsgText) txtSQL1 = select * from abnormal_Info Set mrc1 = ExecuteSQL(txtSQL1, MsgText1) If mrc.EOF = True Then MsgBox 日前沒有移動基站的數(shù)據(jù),無導(dǎo)常情況!, vbOKOnly + vbExclamation, 警告 Else For i = 0 To mrc.RecordCount - 1 If Trim(mrc.Fields(2) = Then mrc.Fields(2) = 0 End If If (Val(mrc.Fields(2) 35 And ht hts) = True Then mrc.Fields(7) = 是 mrc.Update Do While (mrc1.EOF = False) If Trim(mrc1.Fields(0) = Trim(mrc.Fields(0) Then flag = 1 Exit Do End If mrc1.MoveNext Loop If flag 1 Then mrc1.AddNew mrc1.Fields(0) = mrc.Fields(0) mrc1.Fields(1) = mrc.Fields(1) mrc1.Fields(2) = mrc.Fields(2) mrc1.Fields(3) = mrc.Fields(3) mrc1.Fields(4) = mrc.Fields(4) mrc1.Fields(5) = mrc.Fields(5) mrc1.Fields(6) = mrc.Fields(6) mrc1.Update Else flag = 0 End If GoTo kk End If If Trim(mrc.Fields(5) = Then mrc.Fields(5) = 0 End If If (lv lvs And Val(mrc.Fields(5) = 18) = True Then mrc.Fields(7) = 是 mrc.Update Do While (mrc1.EOF = False) If Trim(mrc1.Fields(0) = Trim(mrc.Fields(0) Then flag = 1 Exit Do End If mrc1.MoveNext Loop If flag 1 Then mrc1.AddNew mrc1.Fields(0) = mrc.Fields(0) mrc1.Fields(1) = mrc.Fields(1) mrc1.Fields(2) = mrc.Fields(2) mrc1.Fields(3) = mrc.Fields(3) mrc1.Fields(4) = mrc.Fields(4) mrc1.Fields(5) = mrc.Fields(5) mrc1.Fields(6) = mrc.Fields(6) mrc1.Update Else flag = 0 End If GoTo kk End If If Trim(mrc.Fields(6) = Then mrc.Fields(6) = 0 End If If (st sts And Trim(mrc.Fields(6) = Trim(1) = True Then mrc.Fields(7) = 是 mrc.Update Do While (mrc1.EOF = False) If Trim(mrc1.Fields(0) = Trim(mrc.Fields(0) Then flag = 1 Exit Do End If mrc1.MoveNext Loop If flag 1 Then mrc1.AddNew mrc1.Fields(0) = mrc.Fields(0) mrc1.Fields(1) = mrc.Fields(1) mrc1.Fields(2) = mrc.Fields(2) mrc1.Fields(3) = mrc.Fields(3) mrc1.Fields(4) = mrc.Fields(4) mrc1.Fields(5) = mrc.Fields(5) mrc1.Fields(6) = mrc.Fields(6) mrc1.Update Else flag = 0 End If GoTo kk End If If Trim(mrc.Fields(4) = Then mrc.Fields(4) = 0 End If If (Val(mrc.Fields(4) 80) = True Then mrc.Fields(7) = 是 mrc.Update Do While (mrc1.EOF = False) If Trim(mrc1.Fields(0) = Trim(mrc.Fields(0) Then flag = 1 Exit Do End If mrc1.MoveNext Loop If flag 1 Then mrc1.AddNew mrc1.Fields(0) = mrc.Fields(0) mrc1.Fields(1) = mrc.Fields(1) mrc1.Fields(2) = mrc.Fields(2) mrc1.Fields(3) = mrc.Fields(3) mrc1.Fields(4) = mrc.Fields(4) mrc1.Fields(5) = mrc.Fields(5) mrc1.Fields(6) = mrc.Fields(6) mrc1.Update Else flag = 0 End If GoTo kk End If mrc.Fields(7) = 否kk: mrc.MoveNext Next i mrc.MoveFirst For i = 0 To mrc.RecordCount - 1 If Trim(mrc.Fields(7) = 是 Then abcount = abcount + 1 End If mrc.MoveNext Next i End If frmMain.abnormalsum.Text = Str(abcount) MsgBox 異常檢測完成,請到“異常顯示”菜單項(xiàng)中查看各異常記錄!, vbOKOnly + vbExclamation, 添加用戶End SubPrivate Sub about_Click()frmAbout.showEnd SubPrivate Sub addbaseweb_Click() frmaddbase.Left = frmaddbase.Left + 4000 frmaddbase.Top = frmaddbase.Top + 4000 frmaddbase.show End SubPrivate Sub alarmtime_Click()frmalarmtime.showfrmalarmtime.Left = frmalarmtime.Left + 3500frmalarmtime.Top = frmalarmtime.Top + 3500End SubPrivate Sub allcysshow_Click() txtSQL = select * from base_Info Set mrc = ExecuteSQL(txtSQL, MsgText) If mrc.EOF = True Then MsgBox 日前沒有移動基站的數(shù)據(jù),無法循環(huán)顯示!, vbOKOnly + vbExclamation, 警告 Else Timer2.Enabled = True End If End SubPrivate Sub coditionshow_Click() txtSQL = select * from abnormal_Info Set mrc = ExecuteSQL(txtSQL, MsgText) If mrc.EOF = True Then MsgBox 日前沒有異常移動基站的數(shù)據(jù),無法循環(huán)顯示!, vbOKOnly + vbExclamation, 警告 Else Timer3.Enabled = True End IfEnd SubPrivate Sub cycinteral_Click()frminterval.showEnd SubPrivate Sub exit_Click()EndEnd SubPrivate Sub Form_Load()Timer1.Enabled = True ok.Visible = False last.Visible = False next1.Visible = False yesok.Visible = False Label14.Visible = False Label15.Visible = False Label16.Visible = False Label17.Visible = False If username = admin Then menuSystem.Enabled = True Else menuSystem.Enabled = False End If txtdata.Text = Date txtime.Text = Time txtSQL = select * from base_Info Set mrc = ExecuteSQL(txtSQL, MsgText) End SubPrivate Sub last_Click() mrc.MovePrevious If mrc.BOF = False Then txtbaseno.Text = mrc.Fields(0) If mrc.Fields(1) Then txtbasename.Text = mrc.Fields(1) Else txtbasename.Text = End If If mrc.Fields(2) Then txtintemperature.Text = mrc.Fields(2) Else txtintemperature.Text = End If If mrc.Fields(3) Then txtoutemperature.Text = mrc.Fields(3) Else txtoutemperature.Text = End If If mrc.Fields(4) Then txthumidity.Text = mrc.Fields(4) Else txthumidity.Text = End If If mrc.Fields(5) Then txtvoltage.Text = mrc.Fields(5) Else txtvoltage.Text = End If next1.Enabled = True Else mrc.MoveFirst next1.Enabled = True last.Enabled = False End IfEnd SubPrivate Sub menuAdduser_Click() gintMode = 1 frmadduser.show frmadduser.ZOrder 0End SubPrivate Sub menudeluser_Click()gintMode = 1 frmdeluser.show frmdeluser.ZOrder 0End SubPrivate Sub menuExit_Click()EndEnd SubPrivate Sub menuModifypwd_Click() gintMode = 1 frmmodipwd.show frmmodipwd.ZOrder 0End SubPrivate Sub next1_Click() mrc.MoveNext If mrc.EOF = False Then txtbaseno.Text = mrc.Fields(0) If mrc.Fields(1) Then txtbasename.Text = mrc.Fields(1) Else txtbasename.Text = End If If mrc.Fields(2) Then txtintemperature.Text = mrc.Fields(2) Else txtintemperature.Text = End If If mrc.Fields(3) Then txtoutemperature.Text = mrc.Fields(3) Else txtoutemperature.Text = End If If mrc.Fields(4) Then txthumidity.Text = mrc.Fields(4) Else txthumidity.Text = End If If mrc.Fields(5) Then txtvoltage.Text = mrc.Fields(5) Else txtvoltage.Text = End If last.Enabled = True Else mrc.MoveLast next1.Enabled = False last.Enabled = True End IfEnd SubPrivate Sub ok_Click()sdemperature = Val(txtstemperature.Text)ok.Visible = Falseabnormity.Enabled = TrueEnd SubPrivate Sub onebyone_Click()ok.Visible = Truelast.Visible = Truenext1.Visible = Trueyesok.Visible = TruetxtSQL = select * from base_Info order by 基站編號Set mrc = ExecuteSQL(txtSQL, MsgText)txtbaseno.Enabled = Falsetxtbasename.Enabled = Truetxtintemperature.Enabled = Truetxtoutemperature.Enabled = Truetxthumidity.Enabled = Truetxtvoltage.Enabled = TrueEnd SubPrivate Sub Text7_Change()End SubPrivate Sub showtime_Click()frmtime.showfrmtime.Timer1.Enabled = Truefrmtime.Left = frmtime.Left + 3500frmtime.Top = frmtime.Top + 3500End SubPrivate Sub Timer1_Timer()If mrc.EOF True And mrc.BOF True Thentxtime.Text = Timeh2 = Hour(Time)m2 = Minute(Time)s2 = Second(Time)If s2 = s1 Then s3 = s2 - s1 If m2 = m1 Then m3 = m2 - m1 h3 = h2 - h1 Else m3 = 60 + m2 - m1 h3 = h2 - h1 - 1 End IfElse s3 = 60 + s2 - s1 If m2 = (m1 - 1) Then m3 = m2 - m1 - 1 h3 = h2 - h1 Else m3 = 60 + m2 - m1 h3 = h2 - h1 - 1 End IfEnd IfIf Val(txtintemperature.Text) 35 Thentxthigher.Text = Str(h3) + 時 + Str(m3) + 分 + Str(s3) + 秒ht = h3 * 60 + m3 + s3 / 60Elsetxthigher.Text = 0時0分0秒ht = 0End IfIf Trim(mrc.Fields(6) = Trim(1) Thentxtstop.Text = Str(h3) + 時 + Str(m3) + 分 + Str(s3) + 秒st = h3 * 60 + m3 + s3 / 60Elsetxtstop.Text = 0時0分0秒st = 0End IfIf Val(txtvoltage.Text) hts Then If flag = 0 Then Label14.Visible = True Label14.ForeColor = 255 flag = 1 Else Label14.Visible = False Label14.ForeColor = 0 flag = 0 End If Else Label14.Visible = False End If If st sts Then If flag = 0 Then Label15.Visible = True Label15.ForeColor = 255 flag = 1 Else Label15.Visible = False Label15.ForeColor = 0 flag = 0 End If Else Label15.Visible = False End If If lv lvs Then If flag = 0 Then Label16.Visible = True Label16.ForeColor = 255 flag = 1 Else Label16.Visible = False Label16.ForeColor = 0 flag = 0 End If Else Label16.Visible = False End If If Val(txthumidity.Text) 80 Then If flag = 0 Then Label17.Visible = True Label17.ForeColor = 255 flag = 1 Else Label17.Visible = False Label17.ForeColor = 0 flag = 0 End If Else Label17.Visible = False End If End If End SubPrivate Sub Timer2_Timer()If mrc.EOF = False And mrc.BOF = False Then txtbaseno.Text = mrc.Fields(0) txtbasename.Text = mrc.Fields(1) If mrc.Fields(2) Then txtintemperature.Text = mrc.Fields(2) Else txtintemperature.Text = End If If mrc.Fields(3) Then txtoutemperature.Text = mrc.Fields(3) Else txtintemperature.Text = End If If mrc.Fields(4) Then txthumidity.Text = mrc.Fields(4) Else txtintemperature.Text = End If If mrc.Fields(5) Then txtvoltage.Text = mrc.Fields(5) Else txtintemperature.Text = End If mrc.MoveNext rcount = rcount + 1 If rcount = mrc.RecordCount Then nmsg = MsgBox(是否還想繼續(xù)循環(huán)顯示?, vbYesNo, 提示) If nmsg = vbYes Then mrc.MoveFirst rcount = 0 Else Timer2.Enabled = False Exit Sub End If End If ElseExit SubEnd IfEnd SubPrivate Sub updatepsw_Click()Form3.showForm3.Label2 = 舊密碼:Form3.Label3 = 新密碼:flag1 = 2End SubPrivate Sub Timer3_Timer()If mrc.EOF True And mrc.BOF True Then txtbaseno.Text = mrc.Fields(0) txtbasename.Text = mrc.Fields(1) If mrc.Fields(2) Then txtintemperature.Text = mrc.Fields(2) Else txtintemperature.Text = End If If mrc.Fields(3) Then txtoutemperature.Text = mrc.Fields(3) Else txtintemperature.Text = End If If mrc.Fields(4) Then txthumidity.Text = mrc.Fields(4) Else txtintemperature.Text = End If If mrc.Fields(5) Then txtvoltage.Text = mrc.Fields(5) Else txtintemperature.Text = End If mrc.MoveNext rcount = rcount + 1 If rcount = mrc.RecordCount Then nmsg = MsgBox(是否還想繼續(xù)循環(huán)顯示?, vbYesNo, 提示) If nmsg = vbYes Then mrc.MoveFirst rcount = 0 Else Timer3.Enabled = False Exit Sub End If End IfEnd IfEnd SubPrivate Sub together_Click()frmsearch.showUnload MeEnd SubPrivate Sub yesok_Click() Dim txtSQL As String Dim mrc As ADODB.Recordset Dim MsgText As String txtSQL = select * from base_Info where 基站編號 = & txtbaseno.Text & Set mrc = ExecuteSQL(txtSQL, MsgText)mrc.Fields(0) = txtbaseno.Textmrc.Fields(1) = txtbasename.Textmrc.Fields(2) = txtintemperature.Textmrc.Fields(3) = txtoutemperature.Textmrc.Fields(4) = txthumidity.Textmrc.Fields(5) = txtvoltage.Textmrc.UpdateMsgBox 修改基站信息成功!, vbOKOnly + vbExclamation, 警告
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- RNF5-agonist-1-生命科學(xué)試劑-MCE-3083
- Acremine-F-生命科學(xué)試劑-MCE-8674
- 二零二五年度船舶船員勞動合同及船舶航行風(fēng)險(xiǎn)承擔(dān)合同
- 2025年度汽車美容店員工勞動合同簽訂與解除流程合同
- 2025年度航空設(shè)施面積差額補(bǔ)充合同
- 2025年度汽車銷售合同和購車售后服務(wù)質(zhì)量監(jiān)控協(xié)議
- 施工日志填寫中的質(zhì)量和安全事故記錄方法
- 運(yùn)動與心理健康如何通過鍛煉提升幸福感
- 教育科技下的道德與法治教育融合探討
- 運(yùn)動場地安全檢查與整改措施匯報(bào)
- 2025-2030年中國清真食品行業(yè)運(yùn)行狀況及投資發(fā)展前景預(yù)測報(bào)告
- 廣東省茂名市電白區(qū)2024-2025學(xué)年七年級上學(xué)期期末質(zhì)量監(jiān)測生物學(xué)試卷(含答案)
- 《教育強(qiáng)國建設(shè)規(guī)劃綱要(2024-2035年)》全文
- 山東省濱州市2024-2025學(xué)年高二上學(xué)期期末地理試題( 含答案)
- 2025年河南洛陽市孟津區(qū)引進(jìn)研究生學(xué)歷人才50人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年度軍人軍事秘密保護(hù)保密協(xié)議與信息安全風(fēng)險(xiǎn)評估合同3篇
- 蛋雞生產(chǎn)飼養(yǎng)養(yǎng)殖培訓(xùn)課件
- 數(shù)字化轉(zhuǎn)型中的職業(yè)能力重構(gòu)
- 運(yùn)用PDCA降低住院患者跌倒-墜床發(fā)生率
- 2025屆高中數(shù)學(xué)一輪復(fù)習(xí)專練:橢圓(含解析)
- 立春氣象與生活影響模板
評論
0/150
提交評論