版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、本科生畢業(yè)論文(設(shè)計)題目 基于VC+的公交查詢系統(tǒng) 姓名 XX 學(xué)號 院系 電氣信息及自動化學(xué)院 專業(yè) 電氣工程及其自動化 指導(dǎo)教師 陳梅 職稱 講師 2012 年 5 月 日曲阜師范大學(xué)教務(wù)處制目 錄摘要1關(guān)鍵詞1Abstract1Key words11 緒論21.1 課題編寫背景21.2 國內(nèi)外研究狀況21.3研究意義22 系統(tǒng)開發(fā)技術(shù)22.1 系統(tǒng)開發(fā)技術(shù)簡介22.2 數(shù)據(jù)庫技術(shù)32.3 系統(tǒng)運行環(huán)境43 需求分析 43.1 功能需求分析 43.2 性能需求43.3 數(shù)據(jù)需求43.4軟件結(jié)構(gòu)53.5功能流程54 系統(tǒng)設(shè)計64.1系統(tǒng)功能模塊設(shè)計64.2數(shù)據(jù)交換的實現(xiàn)64.3 模塊流程圖
2、75系統(tǒng)實現(xiàn)85.1 模塊界面85.2 數(shù)據(jù)表95.3車次查詢實現(xiàn)代碼及運行結(jié)果105.4站點查詢實現(xiàn)代碼及運行結(jié)果 126 結(jié)論136.1系統(tǒng)需要改進的地方136.2設(shè)計感想13致謝14參考文獻15基于VC+的公交查詢系統(tǒng)電氣工程及其自動化專業(yè)學(xué)生XX指導(dǎo)教師陳梅摘要:我國城市公交線路查詢系統(tǒng)的發(fā)展落后于現(xiàn)在國家的經(jīng)濟發(fā)展。廣大乘客可以獲得的信息的方式較少,給出行帶來了不便。為了解決這個問題,本人設(shè)計了這個城市公交查詢系統(tǒng)。考慮了公交運行的實際情況和不同公交乘客的實際要求,分析了此系統(tǒng)應(yīng)該具有的功能;又對系統(tǒng)的主要功能進行了詳細的描述,這其中主要包括兩大模塊:站點查詢模塊和車次查詢模塊。最后
3、結(jié)合系統(tǒng)開發(fā)階段和調(diào)試階段發(fā)現(xiàn)的問題提出了需要完善的地方。關(guān)鍵詞:查詢 車次 站點Based on the VC+ Public traffic Query System Student majoring in Electrical engineering and automationXXTutor ChenmeiAbstract: The development of the bus transportation enquiry system fall behind the growth of our countries econo
4、my. The large part of passengers can acquire few ways of information .So its necessary to us to develop a kind of citys system of bus road to resolve this problem. For this purpose, I design this application system. From this design, I analyzed the present condition of the bus passenger information
5、and different peoples needs, in order to knower what functions this equipment should contain. And then I describe the systems main function modules in detail, these functions can be divided into two modules, station enquiry , number of bus enquiry. At last, according to the problems that happened in
6、 the period of using, I summed up some ways to improve the system .Key words: enquiry; number of bus; station引言 現(xiàn)階段社會發(fā)展很迅速,城市道路很多,很多時候會有道路擁堵和該道路的問題。因此,最大限度的提高道路使用效率就顯得尤為重要,這對廣大乘客來說不僅可以提高出行的效率還可以節(jié)省很多時間?,F(xiàn)階段在我國乘客主要的交通方式還是以公交車為主,所以每個城市的公交系統(tǒng)都很龐大。公交查詢系統(tǒng)是這幾年出現(xiàn)的一種新事物,因每個城市的發(fā)展水平不一樣。獲得,所以乘客獲得信息的方式也不同。而國內(nèi)現(xiàn)在比較缺
7、乏專門的交通信息發(fā)布的管理機構(gòu),無法保證信息的可靠性。隨著交通需求的增長,從事交通服務(wù)信息的公司越來越多,借助現(xiàn)代的信息技術(shù)和管理方法,建立公交查詢系統(tǒng)是社會發(fā)展的趨勢?,F(xiàn)在比較成熟的公交查詢系統(tǒng)一般具備的功能是:采用車站站點查詢車次查詢、站至站查詢等,不僅能夠查詢到各公交線路的起停站點,還可以給出相關(guān)的路線。縱觀現(xiàn)在的形式,公交查詢系統(tǒng)有著良好的發(fā)展前景,未來的公交查詢呢系統(tǒng)將是基于B/S架構(gòu),通過瀏覽器查詢,通過計算機網(wǎng)絡(luò)全面聯(lián)網(wǎng),實現(xiàn)中心控制、自動更新、更多的查詢方式和GIS系統(tǒng)的互聯(lián)互通等等更多更強大的功能。1 緒論1.1課題編寫背景在中國,隨著經(jīng)濟的快速發(fā)展,城市交通擁堵,交通事故頻
8、繁和環(huán)境污染的現(xiàn)象 日益嚴重,阻礙了城市居民生活水平的提高和經(jīng)濟的可持續(xù)發(fā)展。根據(jù)國內(nèi)外城市交 通發(fā)展的經(jīng)驗教訓(xùn),交通界專家學(xué)者達成共識優(yōu)先發(fā)展公共交通是解決城市交通 擁堵的根本途徑之一。城市公共交通運輸以其覆蓋面廣、經(jīng)濟、快捷的特點,目前仍然是絕大多數(shù)出行者的首選方式,也是各地城市政府大力發(fā)展的一種交通方式。正因為其覆蓋面廣、經(jīng)濟、快捷的特點,城市公交線路、站點變動的靈活性就很大。下水道的堵塞,路面的修補,道路高峰期的擁堵,等等,這些都直接或間接地影響著公交車的行車路線,這不僅給本市市民帶來了不便,也為外來旅游、工作的人帶來極 大的不便。1.2國內(nèi)外研究狀況現(xiàn)階段在國內(nèi),乘客可以獲得的信息較
9、少,基本上沒有可靠地即時信息,如果能夠提供一種服務(wù),為市民特別是外來旅游、出差、就醫(yī)等急需了解 本地道路情況的人提供方便、快捷、經(jīng)濟、高效地利用公交線路的方案,將方便他們的出行和生活,同時減少不必要的交通流量,提高交通運輸?shù)男屎统鞘械牡匚弧D壳霸谥袊@已是一個越來越迫切的現(xiàn)實問題。為了解決這一系列的問題,國外在城市 公交網(wǎng)絡(luò)系統(tǒng)上投人了極大的財力 構(gòu)建了利用計算機網(wǎng)絡(luò)和先進的通信系統(tǒng)的智能 運輸系統(tǒng)ITS(Intelligence Transport System)。從而實現(xiàn)了大范圍內(nèi)全方位發(fā)揮的 實時、準(zhǔn)確、高效的運輸綜合管理,使人、車、路密切配合,和諧統(tǒng)一,大大改善了 交通環(huán)境等。國內(nèi)在
10、這方面的起步較晚,但是各地政府都給予了極大的重視。相繼建 立了網(wǎng)上公交查詢系統(tǒng),但是效果不甚理想。因此對公交系統(tǒng)查詢研究已是一個非常重要的問題?;谝陨蠋c,本文從本市用戶實際需求出發(fā),研究了本市公交系統(tǒng)的設(shè)計問題。我首先登陸了網(wǎng)絡(luò)上的日照市公交查詢系統(tǒng)。 在該網(wǎng)站上,詳細查看了日照市的公交車輛信息,因日照市還是一個新生的海邊城市人口不是特別多,道路不是特別擁擠,所以人們出行大多選擇私家車輛。因此將來私家車會越來越多,最終將導(dǎo)致日照市和其他城市一樣變得很擁擠,到時候城市公共交通仍是絕大多數(shù)出行者的首選方式,也是城市政府大力發(fā)展的一種交通方式。 1.3 研究意義 我國私人汽車的迅速發(fā)展給城市的交
11、通系統(tǒng)帶來嚴重的影響,如何考慮私家車和公共汽車的競爭關(guān)系并建立一個有競爭力的,優(yōu)化了的公交系統(tǒng)是具有戰(zhàn)略意義的。我國實行了可持續(xù)發(fā)展戰(zhàn)略,當(dāng)然也包括交通的可持續(xù)發(fā)展。所以致力于優(yōu)化交通系統(tǒng)結(jié)構(gòu)和發(fā)展公共交通信息化體系是當(dāng)務(wù)之急。2 系統(tǒng)開發(fā)技術(shù)2.1 系統(tǒng)開發(fā)技術(shù)簡介2.1.1 VisualC+簡介VisualC+是微軟開發(fā)的一個集成環(huán)境,是使用C+的一個平臺。它是一個功能強大的可視化軟件開發(fā)工具。自1993年Microsoft公司推出Visual C+1.0后,隨著其新版本的不斷問世,Visual C+已成為專業(yè)程序員進行軟件開發(fā)的首選工具。Visual C+6.0不僅是一個C+編譯器,而且
12、是一個基于Windows操作系統(tǒng)的可視化集成開發(fā)環(huán)境(Integrated Development Environment,IDE)。Visual C+6.0由許多組件組成,包括編輯器、調(diào)試器以及程序向?qū)ppWizard、類向?qū)lass Wizard等開發(fā)工具。 這些組件通過一個名為Developer Studio的組件集成為和諧的開發(fā)環(huán)境。2.1.2 MFC基礎(chǔ)類類 MFC,微軟基礎(chǔ)類(Microsoft Foundation Classes),同VCL類似,是一種Application Framework,隨微軟Visual C+ 開發(fā)工具發(fā)布。該類庫提供一組通用的可重用的類庫供開發(fā)人
13、員使用。大部分類均從CObject 直接或間接派生,只有少部分類例外。MFC 應(yīng)用程序的總體結(jié)構(gòu)通常由 由開發(fā)人員從MFC類派生的幾個類和一個CWinApp類對象(應(yīng)用程序?qū)ο螅┙M成。MFC 提供了MFC AppWizard 自動生成框架。 Windows 應(yīng)用程序中,MFC 的主包含文件為"Afxwin.h"。MFC,微軟基礎(chǔ)類(Microsoft Foundation Classes),實際上是微軟提供的,用于在C+環(huán)境下編寫應(yīng)用程序的一個框架和引擎,VC+是WinDOS下開發(fā)人員使用的專業(yè)C+ SDK(SDK,Standard SoftWare Develop Kit
14、,專業(yè)軟件開發(fā)平臺),MFC就是掛在它之上的一個輔助軟件開發(fā)包,是對WindowsAPI的封裝,大約有100多個類,但常用的有二三十種?,F(xiàn)在介紹一下MFC中比較重要也較常用的類。CWnd:窗口類,它是大多數(shù)“看得見的東西”的父類,比如視圖CView、框架窗口CFrameWnd、工具條CToolBar、對話框CDialog、按鈕CButton等。 CDocument文檔,負責(zé)內(nèi)存數(shù)據(jù)與磁盤的交互。最重要的是OnOpenDocument(讀入),OnSaveDocument(寫盤),Serialize(讀寫) Cview:視圖類,負責(zé)內(nèi)存數(shù)據(jù)與用戶的交互。包括數(shù)據(jù)的顯示、用戶操作的響應(yīng)(如菜單的選
15、取、鼠標(biāo)的響應(yīng))。最重要的是OnDraw(重畫窗口),通常用CWnd:Invalidate()來啟動它。另外,它通過消息映射表處理菜單、工具條、快捷鍵和其他用戶消息。 CDC:設(shè)備文本類。無論是顯示器還是打印機,都是畫圖給用戶看。這圖就抽象為CDC類來完成。 Cdialog:對話框類。它是所有對話框的類。CwinApp:應(yīng)用程序類。似于C中的main函數(shù),是程序執(zhí)行的入口和管理者,負責(zé)程序建立、消滅,主窗口和文檔模板的建立。CGdiObject及子類,用于向設(shè)備文本畫圖。它們都需要在使用前選進DC。 Cbrush:刷子,填充 Cfont:字體,控制文字輸出的字體 。Cfile:文件。最重要的不
16、外是Open(打開),Read(讀入),Write(寫) Cstring:字符串。封裝了C中的字符數(shù)組,非常實用。 2.2 數(shù)據(jù)庫技術(shù)數(shù)據(jù)庫技術(shù)作為管理技術(shù),是計算機軟件領(lǐng)域的一個重要分支,產(chǎn)生于60年代末?,F(xiàn)在已形成相當(dāng)成規(guī)模的理論體系和實用技術(shù),優(yōu)秀的數(shù)據(jù)庫設(shè)計是應(yīng)用成功的基石,是開發(fā)應(yīng)用的前提。數(shù)據(jù)庫的體系結(jié)構(gòu)分為三級:內(nèi)部級,概念級和外部級。這個三級結(jié)構(gòu)有時也稱為“三級模式結(jié)構(gòu)”外部級:最接近用戶,是單個用戶所有能看到的數(shù)據(jù)特性。單個用戶使用的數(shù)據(jù)視圖的描述稱為“外模式”。概念級:涉及到所有用戶的數(shù)據(jù)定義,是全局的數(shù)據(jù)視圖。全局視圖的描述稱為“概念模式”。內(nèi)部級:最接近于物理存儲設(shè)備,
17、涉及到實際數(shù)據(jù)存儲的結(jié)構(gòu)物理存儲數(shù)據(jù)視圖的描述稱為“內(nèi)模式”。數(shù)據(jù)庫的三級模式結(jié)構(gòu)是數(shù)據(jù)的三個抽象級別。它把數(shù)據(jù)的具體組織留給DBMS去做,用戶只要抽象的處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計算機中的表示和存儲,這樣就減輕了用戶使用系統(tǒng)的負擔(dān)。本系統(tǒng)采用的數(shù)據(jù)庫管理系統(tǒng)是微軟公司的Acess2000,Access數(shù)據(jù)庫不但具有dBASE、FoxBASE、FoxPro等數(shù)據(jù)庫的優(yōu)點,而且還具有其自身特點,它是對傳統(tǒng)數(shù)據(jù)庫的發(fā)展,提供了真正的關(guān)系數(shù)據(jù)庫管理。Access是一個功能強大、方便靈活、適用于個人單機環(huán)境下使用的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它同時提供了一個完整的數(shù)據(jù)庫應(yīng)用開發(fā)工具,可用于開發(fā)適合于特定的數(shù)
18、據(jù)庫管理的Windows應(yīng)用程序。<1>Access的對象Access 2000支持的對象包括表、查詢、報表、窗體、宏、模塊及網(wǎng)頁。Access所提供的這些對象都存放在同一個數(shù)據(jù)庫文件(.mdb文件)中,而不像其他數(shù)據(jù)庫那樣分別存放于不同的文件中。這樣就方便了數(shù)據(jù)庫文件的管理。在Access 2000的各個對象中,表是數(shù)據(jù)庫的核心基礎(chǔ),它存放著數(shù)據(jù)庫中的全部數(shù)據(jù)信息。報表、查詢和窗體都是從數(shù)據(jù)表中獲得數(shù)據(jù)信息,以實現(xiàn)用戶的某一特定需要,例如查找、計算統(tǒng)計、打印、編輯修改等。窗體可以為用戶提供良好的操作界面,通過窗體,用戶可以直接或間接地調(diào)用宏或模塊,并執(zhí)行查詢、打印、預(yù)覽、計算多呢
19、個功能,甚至對數(shù)據(jù)表進行編輯修改等。<2>Access的主要功能(1)定義數(shù)據(jù)創(chuàng)建表,利用表儲存相應(yīng)的信息。(2)根據(jù)需要定義各表之間的關(guān)系,從而將各個表中的相關(guān)的數(shù)據(jù)有機的結(jié)合在一起。(3)方式多樣的數(shù)據(jù)處理能力??梢詣?chuàng)建查詢來檢索數(shù)據(jù);可以創(chuàng)建聯(lián)機窗體來直接查看、輸入及更改表中的數(shù)據(jù);可以創(chuàng)建報表來分析數(shù)據(jù)或?qū)?shù)據(jù)以特定的方式打印出來。(4)創(chuàng)建Web頁,建立對Internet和Intranet的支持(5)開發(fā)應(yīng)用程序。可以利用宏或Visual Basic將各種數(shù)據(jù)庫對象連接在一起,形成一個數(shù)據(jù)庫應(yīng)用系統(tǒng),而且用戶也不需要編寫復(fù)雜的代碼。2.3 系統(tǒng)運行環(huán)境<1>.
20、操作系統(tǒng)要求:windows xp/windows 2000<2>.需要的軟件:Microsoft Office Access 2000,Visual Studio c+6.0<3>.計算機硬件要求:800MHZ奔騰 獲其他處理器,256以上的內(nèi)存3 需求分析3.1 功能需求分析用來查詢線路和車次,為不熟悉交通線路的乘客提供相應(yīng)的信息,通過站點輸入還可以查詢到該車輛通過的其他站點,便于乘客的換乘。此系統(tǒng)一共包含三大功能塊,分別是數(shù)據(jù)庫系統(tǒng)模塊,車次查詢模塊,站點查詢模塊。這幾個模塊可實現(xiàn)的主要功能如下:(1)實現(xiàn)對公交車輛的管理,根據(jù)實際情況對線路及車輛進行更改刪除等操
21、作。(2)實現(xiàn)對已知公交線路的具體信息的查詢功能,也包括所有站點。(3)已知站點,點擊查詢得到所有經(jīng)過該站點的車輛線路信息。3.2 性能需求(1)可操作性:使該系統(tǒng)適合個層次乘客的用戶,查詢功能方便快捷。(2)實用性:系統(tǒng)為用戶實現(xiàn)了查詢操作。3.3 數(shù)據(jù)需求(1)公交車次數(shù)據(jù)的輸入,大部分是日照市大學(xué)城附近的車次。(2)站點數(shù)據(jù)的錄入。3.4 軟件結(jié)構(gòu) 本系統(tǒng)的軟件結(jié)構(gòu)比較簡單,主要有兩大部分組成:車次查詢和站點換乘。如圖3-1所示: 公交查詢系統(tǒng)設(shè)計與實現(xiàn)車次查詢站點查詢圖3-1 軟件結(jié)構(gòu)3.5 功能流程這個系統(tǒng)的功能流程是:用戶進入主界面后進行功能選擇。然后進行數(shù)據(jù)輸或或選擇車次或者輸入
22、站點然后進行查詢,系統(tǒng)會進行判定用戶輸入的信息是否正確,如果正確可以進行下一步具體的查詢功能,否則的話會提示用戶輸入正確信息。如圖3-2所示: 圖3-2 功能流程4 系統(tǒng)設(shè)計 4.1系統(tǒng)功能模塊設(shè)計本系統(tǒng)的功能模塊劃分為公交線里車次具體信息查詢功能模塊,站點具體查詢功能模塊。(1) 查詢具體公交線路信息模塊 該模塊可以對用戶輸入的車輛盡行信息檢索,用戶也可以在系統(tǒng)的下拉列表中選擇自己要查詢的車輛,該公交線路的具體信息包括線路上所有的??空军c,功能模塊圖如圖所示: 圖 4-1 具體線路詳細查詢功能模塊圖(2)站點具體信息查詢模塊 該模塊可以根據(jù)用戶輸入的站點名稱進行信息查詢,包括所有經(jīng)過該站點的
23、公交線路。功能模塊圖如圖所示:圖 4-2 站點查詢功能模塊圖4.2 數(shù)據(jù)交換的實現(xiàn) 系統(tǒng)的資源是存放在數(shù)據(jù)庫服務(wù)端的。當(dāng)客戶需要某些資源時,在把這些資源由服務(wù)器發(fā)送給客戶端,通過輸入,點擊按鈕可獲得某一類型的數(shù)據(jù),以該類型的數(shù)據(jù)作為查詢條件遍歷數(shù)據(jù)表,以獲得目標(biāo)結(jié)果。本系統(tǒng)只是簡單的單機運行,但運行時也需要將需要的數(shù)據(jù)庫連接到程序中,這樣用戶才能得到想要的結(jié)果。圖4-3查詢操作與數(shù)據(jù)交換4.3 模塊流程圖4.3.1 車次查詢流程圖 車次查詢的功能是根據(jù)用戶輸入的數(shù)據(jù)判斷是否為空,如果為空那么提示用戶輸入錯誤,否則就調(diào)用車次查詢函數(shù),看是否到了記錄的末端,如果是那么就結(jié)束。如果不是,那么就指向當(dāng)
24、前記錄看是否等同于當(dāng)前記錄中的車次,如果等同那么返回給顯示控件顯示結(jié)果。如果不等同那么就指向下一條記錄。圖4-4 車次查詢流程圖4.3.2站點查詢流程圖站點查詢的功能是根據(jù)用戶輸入的數(shù)據(jù)判斷是否為空,如果為空那么提示用戶輸入錯誤,否則就調(diào)用站點查詢函數(shù),看是否到了記錄的末端,如果是那么就結(jié)束。如果不是,那么就指向當(dāng)前記錄看是否等同于當(dāng)前記錄中的站點,如果等同那么返回給顯示控件顯示結(jié)果。如果不等同那么就指向下一條記錄。圖 4-5 站點查詢流程圖5系統(tǒng)實現(xiàn)這個應(yīng)用軟件落實到具體的實現(xiàn)上時,首先要進行界面的設(shè)計,界面的功能布局是否合理、美觀與否都關(guān)乎到這個軟件質(zhì)量。所以軟件的界面也是很重要的一部分。
25、然后要建立數(shù)據(jù)庫,數(shù)據(jù)表是用戶查詢內(nèi)容的來源,所以數(shù)據(jù)表的內(nèi)容直接關(guān)系到用戶可以從這個軟件中得到什么信息,這也是很重要的部分。這兩部分都做完以后剩下的就是編程了,這是所有預(yù)想功能能否實現(xiàn)的關(guān)鍵所在,也是設(shè)計難點。下面具體介紹各部分是怎么實現(xiàn)的。5.1 模塊界面 設(shè)計開始首先要建立一個基于對話框的MFC工程類,這樣系統(tǒng)會默認生成一個基本的對話框架。里面包含確定和取消兩個按鈕,我們根據(jù)自己的需要進行增刪。這個查詢系統(tǒng)的主要模塊有兩個,一個是車次查詢模塊,另一個是站點查詢模塊。這兩個模塊我做到了一起,這樣比較方便用戶操作。 車次查詢模塊 車次查詢模塊包含一個靜態(tài)控件static box ,一個組合框
26、combo box還有一個按鈕,顯示區(qū)是公共的,也就是說不管是車次查詢還是站點查詢都是從右邊的顯示區(qū)中顯示。這樣比較節(jié)省資源,也比較美觀。具體界面如下圖5-1所示。圖5-1 車次查詢界面 站點查詢模塊 站點查詢界面和車次查詢差不多,控件基本上都是一樣的,只不過站點查詢中用來接收用戶輸入信息的是一個編輯框,編輯框負責(zé)和數(shù)據(jù)庫進行信息交換,顯示區(qū)在右邊,站點查詢及整體效果如下圖5-2所示。圖 5-2整體查詢界面5.2 數(shù)據(jù)表 用Microsoft Access 2000做的公交車輛的數(shù)據(jù)庫如下,其中包含了車輛的車次信息及所有站點信息。 圖5-3 數(shù)據(jù)表信息5.3 車次查詢實現(xiàn)代碼及運行結(jié)果車次查詢
27、模塊主要應(yīng)用的知識點是對記錄集的操作,ODBC記錄集的基本操作包括顯示、滾動、添加、修改等,查詢的方式有兩種,一種是完全匹配查詢,這種查詢方式是對每一條記錄都進行查詢,當(dāng)符合條件時就將其打開。另外一種模糊查詢,在車次查詢中用不到。下面具體實現(xiàn)車系查詢的主要代碼:void CBusDlg:OnNum() /車次查詢按鈕函數(shù)代碼 / TODO: Add your control notification handler code hereCString str; /定義字符串類型的變量strint i=m_num.GetCurSel(); /返回組合框中列表框中當(dāng)前選中的項的下標(biāo)。如果/有選中項,
28、則返回CB_ERR m_set.m_strFilter=" bus_station"if(m_set.IsOpen() /這是調(diào)用數(shù)據(jù)庫打開函數(shù),如果文件是打開的那么就執(zhí)/行以下的內(nèi)容m_set.Close(); /將文件關(guān)閉,重新進行下面的操作m_set.Open(); /打開文件m_set.MoveFirst(); /移到數(shù)據(jù)表中的第一條記錄for(int j=0;j<i;j+) /定義整型變量j,如果沒有到達記錄集的最后一條記/那么就順序往下移動m_set.MoveNext();str.Format("%ld",m_set.m_bus_num
29、ber);/將變量值轉(zhuǎn)換成需要的類型放到str中SetDlgItemText(IDC_BUSNUM1,str); /將str中的值顯示到控件中str.Format("%s",m_set.m_bus_station);SetDlgItemText(IDC_STANUM1,str);m_set.Close();這部分是對車次查詢模塊中的查詢按鈕添加的功能,它主要是在用戶輸入或者選擇所需車次后對數(shù)據(jù)庫進行的檢索,將符合用戶要求的信息進行顯示。運行測試后結(jié)果如圖5-4 所示。圖 5-4 車次查詢結(jié)果這部分能夠正常運行的前提是數(shù)據(jù)庫可以連接正常,如果數(shù)據(jù)庫連接不上那么系統(tǒng)將不可以調(diào)用
30、功能函數(shù)進行信息檢索。當(dāng)用戶輸入信息不能和數(shù)據(jù)庫中的記錄相匹配時將會彈出對話框提示用戶無法找到所需信息,實現(xiàn)的代碼如下:BOOL CBusDlg:OnInitDialog()CDialog:OnInitDialog();ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX < 0xF000);CMenu* pSysMenu = GetSystemMenu(FALSE);if (pSysMenu != NULL)CString strAboutMenu;strAboutMenu.LoadString(ID
31、S_ABOUTBOX);if (!strAboutMenu.IsEmpty()pSysMenu->AppendMenu(MF_SEPARATOR);pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);SetIcon(m_hIcon, TRUE);/ 設(shè)置大圖標(biāo)SetIcon(m_hIcon, FALSE); /設(shè)置小圖標(biāo)if(!m_database.Open(NULL,FALSE,FALSE,"ODBC;DSN=bus") AfxMessageBox("打開數(shù)據(jù)庫失敗!");
32、/數(shù)據(jù)庫ODBC操作語言,如果不滿足條件那么就彈出對話框:打開失敗m_set.Open();CString str;m_set.MoveFirst();while(!m_set.IsEOF() str.Format("%ld",m_set.m_bus_number);m_num.AddString(str);m_set.MoveNext();m_set.Close();return TRUE; 5.4站點查詢實現(xiàn)代碼及運行結(jié)果站點查詢主要用到是模糊查詢,用戶只給出??空径皇钦麠l路線,我們需要對記錄集進行模糊查詢,在這里用到的關(guān)鍵語句是UpdateData(TRUE);m_
33、set.m_strFilter=" bus_station like '%"+m_edit+"%' "然后利用下面的語句將符合條件的線路顯示到用戶界面上str.Format("%ld",m_set.m_bus_number); 實現(xiàn)的站點查詢功能的代碼具體如下:void CBusDlg:OnSta() UpdateData(TRUE);m_set.m_strFilter=" bus_station like '%"+m_edit+"%' "if(!m_set.Op
34、en()|m_set.IsEOF()AfxMessageBox("抱歉,沒有找到您要查詢的信息!");CString str;int i=IDC_BUSNUM1,j=IDC_STANUM1;while(!m_set.IsEOF()str.Format("%ld",m_set.m_bus_number);SetDlgItemText(i,str);str.Format("%s",m_set.m_bus_station);SetDlgItemText(j,str);i+;j+;m_set.MoveNext();m_set.Close();
35、這段程序中如果開頭部分IF語句里面的條件不滿足那么就會跳過if括號里面的內(nèi)容往下執(zhí)行,也就是說用戶輸入的信息和數(shù)據(jù)庫里面的相匹配,那么程序運行的結(jié)果如下圖5-5所示。圖5-5 站點查詢結(jié)果當(dāng)if里面的語句滿足即當(dāng)用戶輸入的數(shù)據(jù)不能和數(shù)據(jù)庫中的任何一個記錄集匹配時會彈出下面的對話框提示用戶重新輸入或者檢查其信息是否有誤,如圖5-6所示。圖5-6 沒有查詢到用戶輸入信息時結(jié)果6結(jié)論6.1 系統(tǒng)需要改進的地方因本人能力有限和時間關(guān)系,本系統(tǒng)設(shè)計時沒有給出換乘的功能,這是該系統(tǒng)以后要著重改進的地方。然后顯示區(qū)可以根據(jù)匹配信息的多少進行動態(tài)調(diào)整,減少靜態(tài)設(shè)置的冗余情況。這樣數(shù)據(jù)源的自動設(shè)定和動態(tài)鏈接問題
36、可以賦予更大的自主性。系統(tǒng)還有很大的升級空間,以后時間精力允許我會進一步將其完善。6.2 設(shè)計感想隨著畢業(yè)的臨近,我的大學(xué)生活就要結(jié)束了,即將踏入社會去開始另一種生活。寫這個論文的這段時間感觸頗多,我也學(xué)會了很多東西,感覺到自己在慢慢的成熟。 在選這個課題時,我就有一定要做好這個論文的想法。我對計算機編程語言比較感興趣,所以對這個課題還是比較喜歡的。這也是我第二次做這樣的設(shè)計,在大專的時候也是做的這樣的課題,只不過那個是用的java語言,設(shè)計的是虛擬漫游的課題。選題的時候沒料到會很艱難,那時候做的是相當(dāng)?shù)男量?,不過還好最終交上了一份滿意的答案。現(xiàn)在我對這篇論文也傾注了大量的心血,到圖書館查閱了大量的資料,同時我也上網(wǎng)搜索了一些資料或者問我的指導(dǎo)老師。慢慢的思路開始清晰到開始自己動手編寫程序。做程序的這些天基本上都
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年航天精工股份有限公司招聘筆試參考題庫含答案解析
- 二零二五年度甲乙丙三方文化產(chǎn)業(yè)股權(quán)重組與市場推廣合同3篇
- 2024版駕校教練車轉(zhuǎn)讓合同協(xié)議書范本
- 2024版工程項目融資合同:具備法律效力版B版
- 2024版經(jīng)營場所出租合同
- 二零二五年度電機研發(fā)與綠色生產(chǎn)流程優(yōu)化合同3篇
- 二零二五年度智能網(wǎng)聯(lián)汽車二手車買賣合同范本2篇
- 二零二五年度海上活體動物運輸合同標(biāo)的健康保障條款3篇
- 2024版環(huán)保設(shè)備銷售協(xié)議3篇
- 土地太硬,沒辦法耕種的合同(2篇)
- CJJ181-2012 城鎮(zhèn)排水管道檢測與評估技術(shù)規(guī)程
- 2024-2029年中國智能健康手表行業(yè)市場現(xiàn)狀分析及競爭格局與投資發(fā)展研究報告
- 生物醫(yī)學(xué)電子學(xué)智慧樹知到期末考試答案章節(jié)答案2024年天津大學(xué)
- 2023 版《中國近現(xiàn)代史綱要》 課后習(xí)題答案
- DB11T 489-2024 建筑基坑支護技術(shù)規(guī)程
- 一例火電機組有功功率突變原因分析及預(yù)防措施
- 數(shù)學(xué)寒假計劃書
- 第五章 中國特色社會主義理論體系的形成發(fā)展(一)
- 低空經(jīng)濟公司設(shè)立可行性分析
- 2024新能源風(fēng)電場集電線路施工方案
- 2023-2024學(xué)年江西省吉安市吉州區(qū)八年級(上)期末數(shù)學(xué)試卷(含解析)
評論
0/150
提交評論