freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于delphi70程序設(shè)計(jì)(編輯修改稿)

2025-02-14 14:36 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 el文本NoNo婚否Married文本NoNo入單位時(shí)間InDate文本NoNo健康情況Body文本NoNo合同開始 BarStart文本NoNo(表33續(xù))名稱字段名稱類型主鍵非空合同期限 Bar year文本NoNo合同結(jié)束BarEnd文本NoNo家庭住址Address文本NoNo圖片地址Image文本NoNo為了提高系統(tǒng)的安全性,設(shè)計(jì)并實(shí)現(xiàn)了基于射頻識(shí)別的智能計(jì)件軟件系統(tǒng)的登陸窗體。用戶在使用軟件時(shí),雙擊軟件圖標(biāo),彈出密碼登陸窗體,用戶必須輸入正確的密碼,才能進(jìn)入主窗體并進(jìn)行相關(guān)操作。 登陸模塊的界面設(shè)計(jì)新建一個(gè)窗體,將窗體名稱改為“frmLogin”,captain屬性設(shè)置為“用戶登錄”。在此窗體上放置如下控件,并設(shè)置它們各自的屬性,主要控件的功能屬性見表34。此處TMaskEdit的password屬性一定要設(shè)置為*,這樣在輸入密碼時(shí)才會(huì)顯示為*。表34 登陸窗體控件的功能屬性 控件名稱功能屬性描述TLable使用了3個(gè)該控件,Caption屬性分別為“基于射頻識(shí)別智能計(jì)件系統(tǒng)”、“用戶名:”、“密碼:”TComboBoxName屬性為cmbUserName,Item屬性為空TMaskEditPassWord屬性為“*”TBitBtnCaption屬性設(shè)為“LOGIN”,ModalResult屬性設(shè)為“mrNone”TBitBtnCaption屬性設(shè)為“CANCEL”,ModalResult屬性設(shè)為“mrNone”設(shè)置好各個(gè)控件的屬性以后,再調(diào)整窗口大小以及空間的位置,盡量做到實(shí)用美觀。設(shè)計(jì)好的界面效果圖如圖31所示。圖31 用戶登陸模塊窗體效果圖 登陸模塊的程序設(shè)計(jì)否是讀操作員信息等待用戶輸入密碼正確? 進(jìn)入主界面結(jié)束提示錯(cuò)誤開 始圖32 登陸窗體的程序流程圖本程序的用戶身份驗(yàn)證采用了數(shù)據(jù)庫(kù)信息核對(duì)的方式。程序啟動(dòng)時(shí),首先彈出用戶登錄模塊的窗體,同時(shí)程序利用公共數(shù)據(jù)庫(kù)連接對(duì)象連接上數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)中已經(jīng)保存了操作人員的名稱、密碼、權(quán)限等相關(guān)信息,后臺(tái)程序從操作人員表中讀取操作人員的名稱信息,并寫入用戶名下拉框中,然后等待用戶輸入密碼。用戶可以從下拉框中選擇用戶名并輸入密碼,用戶敲擊回車鍵或鼠標(biāo)點(diǎn)擊“確定”按鈕后,程序從操作人員表中檢查是否有相應(yīng)的用戶名和人密碼。如果用戶名或者密碼錯(cuò)誤,會(huì)彈出窗口提示出錯(cuò);如果輸入的用戶名和密碼正確,則根據(jù)該用戶的權(quán)限類別程序進(jìn)行權(quán)限設(shè)置,然后進(jìn)入主窗口。程序的主要流程圖如圖32所示。 主窗體模塊主窗體是程序的主界面,也是該軟件系統(tǒng)中最重要的一個(gè)模塊,下面將詳細(xì)講述主窗體模塊的設(shè)計(jì)與實(shí)現(xiàn)。 主窗體模塊的界面設(shè)計(jì)主窗體主要實(shí)現(xiàn)對(duì)其它模塊的調(diào)用,為此,設(shè)計(jì)了菜單和工具欄按鈕兩種方式,菜單和按鈕實(shí)現(xiàn)對(duì)模塊的調(diào)用。為了顯示數(shù)據(jù)庫(kù)和串口接收到的數(shù)據(jù),主窗體還設(shè)計(jì)了數(shù)據(jù)表格,主窗體界面效果圖如圖33所示。主窗體設(shè)計(jì)過程調(diào)用了大量的控件,關(guān)于它們的功能和屬性如表34所示。圖33主窗體模塊的效果圖表34 主窗體模塊的控件功能屬性控件名稱功能屬性描述TForm用來創(chuàng)建窗口界面TImageList系統(tǒng)圖標(biāo)管理,主菜單、工具欄和其它模塊都可以調(diào)用此處圖標(biāo)TTimer用作與計(jì)算機(jī)時(shí)間保持同步,同時(shí)可用作定時(shí)TSavedialog保存指定文件TToolBar用于創(chuàng)建工具欄,分別建立了“串口設(shè)置”、“計(jì)劃設(shè)置”和“部門設(shè)置”等快捷按鍵TPageControl可將窗口劃分為不同頁(yè),分別顯示不同的狀態(tài)信息TADOQueryName屬性為cj,connection屬性為通過SQL語句對(duì)數(shù)據(jù)庫(kù)的操作TDatasourceDataset屬性為cj,用于連接數(shù)據(jù)控制控件和數(shù)據(jù)集控件TDBGrid使用了2個(gè)此控件,以表格形式顯示分別顯示員工工作量和員工資料信息SPComm此控件的作用是實(shí)現(xiàn)與下位機(jī)的串口通信;TExcelApplication這三個(gè)控件件主要是用來實(shí)現(xiàn)對(duì)Excel的操作的。TExcelWorkBookTExcelWorkSheetTSkinDataTSkinCaption這兩個(gè)控件是皮膚控件,是安裝的第三方控件,作用是美化窗體;TMainMenu用來創(chuàng)建主菜單 串口通信的設(shè)計(jì)串口通信的目的是接收從下位機(jī)發(fā)送過來的數(shù)據(jù),并將這些數(shù)據(jù)經(jīng)過一定的處理,轉(zhuǎn)換成員工ID和計(jì)件信息。主窗體創(chuàng)建時(shí)對(duì)SPComm控件完成初始化設(shè)置并打開串口進(jìn)行通信。TTimer控件每隔一段時(shí)間自動(dòng)調(diào)用該對(duì)象的OnTimer事件,事件不停的循環(huán)發(fā)送下位機(jī)地址,下位機(jī)收到地址如果有信息要發(fā)生則發(fā)送應(yīng)答信號(hào),此時(shí)PC機(jī)與下位機(jī)建立連接,之間相互傳遞數(shù)據(jù)。若下位機(jī)是首次登錄網(wǎng)絡(luò),軟件會(huì)給其發(fā)送當(dāng)天目標(biāo)數(shù),日期時(shí)間等信息。軟件接收到下位機(jī)數(shù)據(jù)后經(jīng)過處理得到計(jì)件數(shù)值,根據(jù)數(shù)值實(shí)時(shí)的更新數(shù)據(jù)庫(kù)和顯示。利用SPComm控件編程實(shí)現(xiàn)串口通信,要先了解它的屬性、方法和事件。下面分別介紹:(1) 屬性CommName:表示COMCOM2等串口的名字.BaudRate:根據(jù)實(shí)際需要設(shè)定波特率,在串口打開后也可以更改此值,實(shí)際波特率則隨之更改。ParityCheck:表示是否需要奇偶校驗(yàn)。ByteSize:根據(jù)實(shí)際情況設(shè)定字節(jié)長(zhǎng)度。Parity:奇偶校驗(yàn)位。StopBits:停止位。SendDataEmpty:這是一個(gè)布爾型屬性,為True時(shí),表示發(fā)送緩存為空,或者發(fā)送隊(duì)列里沒有信息;為false時(shí),表示發(fā)送緩存不為空,或者發(fā)送隊(duì)列里有信息。(2) 方法StartComm方法用于打開串口,當(dāng)打開失敗時(shí)通常會(huì)報(bào)錯(cuò)。錯(cuò)誤主要有如下7種:串口已經(jīng)打開;打開串口錯(cuò)誤;文件句柄不是通信句柄;不能夠安裝通信緩存;不能產(chǎn)生事件;不能產(chǎn)生讀進(jìn)程;不能產(chǎn)生寫進(jìn)程。StopComm方法用于關(guān)閉串口,沒有返回值;WriteCommData(pDataToWrite:PChar;dwSizeofDataToWrite:Word)方法是一個(gè)帶有布爾型返回值的函數(shù),用于將一個(gè)字符串發(fā)送到寫進(jìn)程,發(fā)送成功則返回true,發(fā)送失敗則返回false。執(zhí)行此函數(shù)將立即得到返回值,發(fā)送操作隨后執(zhí)行。該函數(shù)有兩個(gè)參數(shù),其中pDataToWrite是要發(fā)送的字符串,dwSizeofDataToWrite是要發(fā)送字符串的長(zhǎng)度。(3) 事件OnReceiveData:procedure(Sender:TObject;Buffer:Pointer;BufferLength:Word)of object。 當(dāng)有數(shù)據(jù)輸入緩存時(shí)將觸發(fā)該事件,在這里可以對(duì)從串口收到的數(shù)據(jù)進(jìn)行處理。Buffer中是收到的數(shù)據(jù),BufferLength是收到的數(shù)據(jù)長(zhǎng)度。OnReceiveError:procedure(Sender:TObject;EventMask:DWORD)。當(dāng)接收數(shù)據(jù)出現(xiàn)錯(cuò)誤時(shí),將觸發(fā)該事件。 數(shù)據(jù)顯示的設(shè)計(jì)數(shù)據(jù)的實(shí)時(shí)顯示是程序一個(gè)不可或缺的功能,顯示的數(shù)據(jù)包括員工工作量和員工資料兩個(gè)部分。這部分使用了DataSource、TADOQuery、TDBGrid、Pagecontrol控件。TADOQuery控件利用SQL語言的強(qiáng)大功能訪問多個(gè)數(shù)據(jù)表,可實(shí)現(xiàn)數(shù)據(jù)瀏覽、修改和刪除等操作。,詳細(xì)代碼見附錄。TADOQuery控件其它重要屬性設(shè)置如下:SQL 屬性 :“select * from stainfo Order By stano asc”Active屬性 :tureName 屬性 :cj程序中TDataSource控件用于連接TADOQuery控件,主要屬性有:Name 屬性:DataSource1Dataset 屬性:cj(即本程序中的TADOQuery控件)AutoEdit屬性:True在Pagecontrol控件上新建兩個(gè)Newpage分別放置了兩個(gè)TBGrid控件,用于顯示不同的表格。TBGrid控件要顯示數(shù)據(jù)來源由Datasource屬性決定,此處都設(shè)置為DataSource1。Columns(列)屬性用來讀取和設(shè)置表格中列的特性,所有列對(duì)象都存儲(chǔ)在Columns屬性中。程序中DBGrid1控件用于顯示員工工作量,設(shè)計(jì)時(shí)新建了7個(gè)Columns它們FiedName屬性分別設(shè)置為數(shù)據(jù)表中對(duì)應(yīng)的各列。DBGrid2用于顯示員工資料,它也有7列屬性設(shè)置與DBGrid1相似。兩個(gè)表公有的其它重要屬性有:colour屬性用于設(shè)置背景顏色;titlefont包括子屬性colour、Name、Size用于設(shè)置表頭字體;readonly屬性用于設(shè)置表格數(shù)據(jù)是否只讀。 主菜單的設(shè)計(jì)菜單是Windows應(yīng)用程序設(shè)計(jì)中的重要組成部分,大部分應(yīng)用程序的功能都靠菜單來實(shí)現(xiàn)。Delphi 7 應(yīng)用程序開發(fā)中用戶可以使用組件面板Standard選項(xiàng)卡中的MainMeum組件來創(chuàng)建用戶程序的主菜單。為了實(shí)現(xiàn)調(diào)用各個(gè)模塊本程序設(shè)計(jì)的主菜單如下。(1) “系統(tǒng)”菜單的實(shí)現(xiàn)“系統(tǒng)”菜單下包括三個(gè)子菜單項(xiàng):“重新登錄”、“權(quán)限設(shè)置”、“退出系統(tǒng)”?!爸匦碌卿洝辈藛慰梢哉{(diào)用登錄窗口,以實(shí)現(xiàn)用戶的切換?!皺?quán)限設(shè)置”菜單只有高級(jí)用戶可以使用,可以添加、刪除用戶。“退出系統(tǒng)”菜單項(xiàng)的實(shí)現(xiàn)最為簡(jiǎn)單,只要調(diào)用Close過程即可關(guān)閉所有窗體,退出系統(tǒng)。(2) “人事管理”菜單的實(shí)現(xiàn)“人事管理”菜單下包含兩個(gè)子菜單項(xiàng):“部門設(shè)置”和“檔案設(shè)置”。選擇“部門設(shè)置”菜單項(xiàng)將調(diào)用部門設(shè)置窗口,可以設(shè)置相關(guān)部門的信息,此處還可以設(shè)置員工薪酬單價(jià)。選擇“檔案設(shè)置”可以查看、添加、修改、刪除員工的檔案資料。(3) “工具”菜單的實(shí)現(xiàn)“工具”菜單下包含兩個(gè)子菜單項(xiàng):“串口設(shè)置”和“修改密碼”。 這兩個(gè)子菜單項(xiàng)的程序設(shè)計(jì)主要是分別顯示串口設(shè)置窗體和密碼設(shè)置窗體。(4)“生產(chǎn)管理”菜單的實(shí)現(xiàn)“生產(chǎn)管理”菜單下包括兩個(gè)子菜單:“導(dǎo)出Excel”和“設(shè)置計(jì)劃數(shù)”?!皩?dǎo)出Excel”菜單用于導(dǎo)出工作量表。“設(shè)置計(jì)劃數(shù)”菜單調(diào)用計(jì)劃模塊來設(shè)置當(dāng)日計(jì)劃數(shù)。(5)“幫助”菜單的實(shí)現(xiàn)“幫助”菜單下只有一個(gè)菜單項(xiàng):“系統(tǒng)信息”。 工具欄的設(shè)計(jì)ToolBar控件是標(biāo)準(zhǔn)的工具欄控件,它提供了一個(gè)標(biāo)準(zhǔn)的工具欄面板,該控件位于Delphi控件面板上的Win32頁(yè)中。工具欄控件被添加進(jìn)窗體后,會(huì)自動(dòng)位于菜單欄的下面。可以在工具欄控件上直接單擊鼠標(biāo)右鍵,選擇“New Button”菜單命令,為工具欄創(chuàng)建一個(gè)新的按鈕。在工具欄中添加圖標(biāo)的方法可以調(diào)用TImageList控件。可以通過設(shè)置工具欄按鈕的Style屬性來定制工具欄按鈕的風(fēng)格。該屬性可以被設(shè)置為以下值。(1) tbsButton:按鈕的顯示樣式和工作方式與一個(gè)普通的SpeedButton按鈕完全一樣,屬于標(biāo)準(zhǔn)的工具欄按鈕。(2) tbsCheck:具有類似復(fù)選框按鈕的開/關(guān)工作方式,當(dāng)按鈕被單擊后,它會(huì)一直保持被按下的狀態(tài)直到對(duì)它的下一次單擊。當(dāng)按鈕處于被按下的狀態(tài)時(shí),其Down屬性自動(dòng)被設(shè)置為True。(3) tbsDropDown:在按鈕的右邊顯示一個(gè)向下的箭頭,單擊該箭頭會(huì)打開一個(gè)下拉菜單。(4) tbsSeparator:工具欄上的按鈕形形色色,為了便于區(qū)分,多半會(huì)按照其邏輯功能將同一類別的按鈕放在一起,可以設(shè)置某個(gè)工具欄按鈕的Style屬性為tbsSeparator。(5) tbsDivider:與設(shè)置為tbsSeparator時(shí)類似,顯示一條垂直分割線,僅僅作為視覺用途。工具欄控件還有一個(gè)比較重要的屬性是ShowCaptions,設(shè)置為True時(shí),工具欄按鈕上將會(huì)顯示圖標(biāo)和文字。 Excel操作的設(shè)計(jì)Delphi要實(shí)現(xiàn)Excel的操作,需要使用TExcelApplication、TExcelWorkBook、TExcelWorkSheet三類控件。主要有以下幾類操作:(1) Excel文件的創(chuàng)建 要在Delphi中控制Excel, 就必須使用 OLE方法來操作 Excel,可以使用ComObj中提供的接口來創(chuàng)建一個(gè)OLE對(duì)象。創(chuàng)建Excel文件,應(yīng)首先創(chuàng)建一個(gè) OLE對(duì)象,然后在工作簿中建立工作表worksheet ,實(shí)現(xiàn)Excel文件的創(chuàng)建。代碼如下:ExcelApplication1 := (Application)。ExcelWorksheet1 := (Application)。ExcelWorkbook1 := (Application)。(2) 添加新工作簿(emptyparam,0)。 寫Excel表格例如以下是寫表頭部分代碼:[1, 2] := 39。 姓 名39。[1, 3] := 39。目標(biāo)數(shù)39。[1, 4] := 39。本次完成數(shù)39。[1, 5] := 39。累計(jì)完成數(shù)39。[1, 6] := 39。薪 酬(元)39。(4) 顯示當(dāng)前窗口::=True。(5) 退出Excel:。 串口設(shè)置模塊串口通訊是本系統(tǒng)的一個(gè)很重要的部分,串口的設(shè)置則是串口通訊中的重要內(nèi)容,將串口設(shè)置的選項(xiàng)集合到一個(gè)窗體中,并在主窗體中添加一個(gè)菜單項(xiàng):串口設(shè)置,用戶在主窗體中單擊此菜單項(xiàng),可調(diào)用此窗體,對(duì)串口進(jìn)行設(shè)置。 串口設(shè)置模塊的界面設(shè)計(jì)選擇“File”菜單下的“New”選項(xiàng)下的“Form”選項(xiàng),新建一個(gè)窗體,將窗體名稱改為“CommEdit”,并將它的“Caption”屬性改為“串口設(shè)置”。在此窗體上放置如下控件,并設(shè)置它們各自的屬性,控件功能屬性如表35所示。表35 串口設(shè)置模塊控件功能屬性 控件名稱功能屬性描述TComboBox在Ite
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1