特黄特色三级在线观看免费,看黄色片子免费,色综合久,欧美在线视频看看,高潮胡言乱语对白刺激国产,伊人网成人,中文字幕亚洲一碰就硬老熟妇

學(xué)習(xí)啦 > 論文大全 > 畢業(yè)論文 > 計(jì)算機(jī)論文 > 計(jì)算機(jī)網(wǎng)絡(luò) > VB編程中網(wǎng)格控件的選用及使用方法

VB編程中網(wǎng)格控件的選用及使用方法

時(shí)間: 若木633 分享

VB編程中網(wǎng)格控件的選用及使用方法

  隨著基于構(gòu)件開(kāi)發(fā)(Component-Based Development)技術(shù)的發(fā)展,供開(kāi)發(fā)者使用的軟件構(gòu)件越來(lái)越多,單就VB中可使用的網(wǎng)格類控件也有許多種。網(wǎng)格類控件常用在數(shù)據(jù)庫(kù)管理系統(tǒng)的開(kāi)發(fā)中,用來(lái)直觀地顯示表或視圖的二維關(guān)系,在對(duì)數(shù)據(jù)的操作上,有些控件也提供了很多便捷的方法。 同樣是完成這些顯示和操作數(shù)據(jù)的功能,面對(duì)各式各樣的控件,選擇那種來(lái)達(dá)到目的,成了軟件開(kāi)發(fā)者必須考慮的新問(wèn)題。唯有選擇了一個(gè)好的控件,才能提高開(kāi)發(fā)效率,增強(qiáng)軟件的功能,達(dá)到事半功倍的效果。 下面,本人根據(jù)自己長(zhǎng)期以來(lái)積累的實(shí)際經(jīng)驗(yàn),總結(jié)出以下幾點(diǎn)網(wǎng)格控件的選用應(yīng)考慮的方面摘要:

  第一,要考慮控件的實(shí)際功能。功能強(qiáng)、接口多的控件可以增強(qiáng)應(yīng)用軟件的質(zhì)量,也可減少編程工作量,當(dāng)然,這要結(jié)合應(yīng)用需求來(lái)定,并不是功能越多越好。提供的功能多了,控件本身就很大,占好幾兆空間,增加了程序的冗余代碼。另外,一些功能閑置,靈活性太強(qiáng)也可能導(dǎo)致最終用戶不易把握使用。

  第二,控件的穩(wěn)定性要強(qiáng)。作為應(yīng)用程序的基石,不應(yīng)選用那些控件本身輕易出錯(cuò),補(bǔ)丁(patch)太多的版本。

  第三,控件的易用性要高。選用那些屬性配置合理,事件觸發(fā)機(jī)制明晰流暢,易于設(shè)計(jì)和使用,項(xiàng)目組中的程序員都輕易接受把握的控件。  以下簡(jiǎn)要介紹幾種網(wǎng)格類控件的特征,以供選用。 Grid控件摘要: Grid控件可顯示簡(jiǎn)單的二維表格,不用和數(shù)據(jù)庫(kù)直接連接,具有滾動(dòng)條、行頭、列頭等特性,運(yùn)行時(shí)可用鼠標(biāo)調(diào)整行列的寬度,可用于瀏覽數(shù)據(jù),若想對(duì)數(shù)據(jù)進(jìn)行編輯,需結(jié)合TextBox控件,或采取其他變通方法。下面所示畫(huà)面即為日本東京社會(huì)調(diào)查探究所開(kāi)發(fā)的《要員管理系統(tǒng)》中硬件管理部分的畫(huà)面。 畫(huà)面中的下部即為Grid控件,定義其名稱為GrdHardComp。使用時(shí),要首先在下圖所示的屬性窗口中定義其行列數(shù),控制條格式,字體大小,填充格式,鼠標(biāo)模式等特性。 然后,可以動(dòng)態(tài)的劃分其間距摘要:ColWidth(3) = GrdHardComp.Width * 1 / 6 GrdHardComp.ColWidth(4) = GrdHardComp. GrdHardComp.ColWidth(0) = GrdHardComp.Width * 1 / 6 GrdHardComp.ColWidth(1) = GrdHardComp.Width * 5 / 24 GrdHardComp.ColWidth(2) = GrdHardComp.Width * 1 / 6 GrdHardComp.Width * 3 / 24 GrdHardComp.ColWidth(5) = GrdHardComp.Width * 1 / 6 GrdHardComp.ColWidth(6) = GrdHardComp.Width * 1 / 6 Private Hards() As M_Hard 定義其標(biāo)題摘要: GrdHardComp.Row = 0 ' GrdHardComp.Col = 0 GrdHardComp.FixedAlignment(GrdHardComp.Col) = 2 GrdHardComp.Text = "構(gòu)成番號(hào)" GrdHardComp.Col = 1 GrdHardComp.FixedAlignment(GrdHardComp.Col) = 2 GrdHardComp.Text = "構(gòu)成機(jī)器區(qū)分"① … … 在數(shù)據(jù)向Grid中寫(xiě)入或取出時(shí),為了便于大量的數(shù)據(jù)同時(shí),簡(jiǎn)便地寫(xiě)入和修改,可以定義一個(gè)類型。如下摘要: Type M_Hard Number As String OrderNum As String MachKind As String MachKindName As String … … End Type (其中Number等均為要輸入的圖示條目) Private Hards() As M_Hard Hards(),此時(shí)就作為數(shù)據(jù)的傳輸變量,進(jìn)行Grid和TextBox之間的數(shù)據(jù)傳輸。 數(shù)據(jù)向類內(nèi)寫(xiě)入摘要: If HardComp.RecordCount > 0 Then HardComp.MoveFirst Do Until HardComp.EOF ReDim Preserve Hards(H%)// H%為記數(shù)變量。 Hards(H%).OrderNum = HardComp![ OrderNum//輸入編號(hào) Hards(H%).MachKind = HardComp![ MachKind//種類 Hards(H%).MachKindName = HardComp![ MachKindName//分類名 Hards(H%).MachName = HardComp![ MachName//名稱 … … loop HardComp.MoveFirst 類內(nèi)數(shù)據(jù)向Grid內(nèi)寫(xiě)入摘要: GrdHardComp.Row = H% + 1//記錄數(shù)統(tǒng)計(jì) GrdHardComp.Col = 0 GrdHardComp.Text = " " %26 Hards(H%).OrderNum GrdHardComp.Col = 1 GrdHardComp.Text = " " %26 Hards(H%).MachKind GrdHardComp.Col = 2 GrdHardComp.Text = " " %26 Hards(H%).MachKindName GrdHardComp.Col = 3 GrdHardComp.Text = " " %26 Hards(H%).MachName GrdHardComp.Col = 4 … … GrdHardComp.Text = " " %26 Hards(H%).HardLastDate GrdHardComp.Rows = GrdHardComp.Rows + 1//行數(shù)加1 HardComp.MoveNext H% = H% + 1 當(dāng)然,假如使數(shù)據(jù)真正寫(xiě)入數(shù)據(jù)庫(kù),還需進(jìn)行數(shù)據(jù)庫(kù)的讀寫(xiě)操作。Grid只是提供了一個(gè)預(yù)覽的功能,便于數(shù)據(jù)的修改。 由以上Grid的特征及其使用方法可以看出,在需要對(duì)數(shù)據(jù)庫(kù)進(jìn)行大量數(shù)據(jù)的操作時(shí),為了減少對(duì)數(shù)據(jù)庫(kù)的直接操作,提高數(shù)據(jù)庫(kù)的平安性,使用Grid控件,還是有很大方便的。 Grid是VB在早期版本中就帶有的控件,使用簡(jiǎn)便,穩(wěn)定性好,在早期的VB開(kāi)發(fā)過(guò)程中,使用尤其廣泛。但現(xiàn)在和其它控件比較起來(lái)功能有些不足。 DBGrid控件摘要: DBGrid是專用來(lái)操作數(shù)據(jù)庫(kù)的網(wǎng)格控件,可以綁定到Data控件,幾乎不用寫(xiě)代碼就可方便地對(duì)數(shù)據(jù)進(jìn)行顯示,增加、刪除或修改記錄,DBGrid具有OnAddNew、BeforeDelete等事件,可在增加新記錄或刪除修改時(shí)對(duì)數(shù)據(jù)進(jìn)行有效性檢驗(yàn),來(lái)實(shí)現(xiàn)事務(wù)處理功能。DBGrid也可以在設(shè)計(jì)時(shí)編輯網(wǎng)格格式,指定顯示字段等,由于它提供了Column、Split、SelBookmarks等對(duì)象,更增強(qiáng)了顯示和操作數(shù)據(jù)的能力。 下面是筆者所參和開(kāi)發(fā)的東京社會(huì)調(diào)查探究所的項(xiàng)目--《健康診斷系統(tǒng)》的一個(gè)實(shí)例。 圖中的Data4控件把數(shù)據(jù)庫(kù)和DBGrid直接連起來(lái),DBGrid的題目,項(xiàng)目設(shè)置可以在屬性窗口里直接做到。在使用時(shí),要注重新數(shù)據(jù)是先更新數(shù)據(jù)庫(kù),然后才回寫(xiě)到DBGrid里。

  方法如下摘要: Sql = "SELECT * FROM 表名" //SQL語(yǔ)句 Set Data4.Recordset = MyDB2.OpenRecordset(sSql, dbOpenSnapshot) Data4.Refresh 或摘要: DatMonthPlan.RecordSource = "SELECT * FROM 表名WHERE (((關(guān)鍵字)='" %26 Key %26 "')); 假如想對(duì)DBGrid中的某個(gè)條目進(jìn)行復(fù)制,方法如下摘要: Data4.Recordset.AddNew Data4.Recordset![ 關(guān)鍵字 = Key//關(guān)鍵字索引

  Data4.Recordset![記號(hào)= DBGrid.Columns(0).CellValue(DBGrid.GetBookmark(0))//第一列 Data4.Recordset[番號(hào)=DBGrid.Columns(1).CellValue(DBGrid.GetBookmark(0))// 第二列 Data4.Recordset![氏名=DBGrid.Columns(2).CellValue(DBGrid.GetBookmark(0))//第三列 Data4.Recordset.Update Data4.Refresh//數(shù)據(jù)庫(kù)更新 DBGrid.Refresh// DBGrid刷新 假如動(dòng)態(tài)的對(duì)DBGrid中的某個(gè)欄目進(jìn)行增減,可以用如下方法摘要: i = 1 //總顯示列數(shù)記數(shù) Data4.MoveFirst Do Until Data4.EOF DBGrid1.Columns(i).Width = 1600 //定義寬度 DBGrid1.Columns(i).Caption = "年齡" //標(biāo)題 DBGrid1.Columns(i).DataField = "%26 實(shí)際數(shù)據(jù)域 %26" DBGrid1.Columns(i).Visible = True //可見(jiàn)性 DBGrid1.Columns(i).Alignment = 1 //DBGrid 控件列中的值的對(duì)齊方式 Data4.MoveNext i = i + 1 If i > 8 Then Exit Do//列數(shù)最大為8 Loop 由于具有良好的可靠性,靈活性和直觀性,所以DBGrid控件現(xiàn)在被廣泛使用。但不足之處在于DBGrid,和直接操作數(shù)據(jù)庫(kù),對(duì)數(shù)據(jù)庫(kù)的正確性有一定的威脅。改進(jìn)方法是,在修改數(shù)據(jù)庫(kù)時(shí),加入提示信息。 True DBGrid摘要: DBGrid是Apex軟件公司為微軟開(kāi)發(fā)的,而Apex的True DBGrid控件也具有較強(qiáng)的數(shù)據(jù)顯示及處理功能,因和DBGrid同出一宗,所以兩者有很多相同點(diǎn)。在基本功能上,DBGrid的增,減等操作方法可直接用于True DBGrid,在這里就不再贅述。但在DBGrid的基礎(chǔ)上,True DBGrid可以直接嵌入ListBox、Image位圖、單選框等控件(如圖所示),使軟件的界面更加美觀,實(shí)用。 SSDBGrid控件摘要:

  SSDBGrid來(lái)自Sheridan軟件系統(tǒng)公司(http摘要://www.shersoft.com),和Sheridan的其它控件一樣,以漂亮的三維界面見(jiàn)長(zhǎng),SSDBGrid還可和其它數(shù)據(jù)庫(kù)控件如SSDBData、SSDBCombo等有機(jī)結(jié)合,為用戶處理數(shù)據(jù)提供方便,它有幾百個(gè)屬性、方法等接口,為界面的潤(rùn)色提供了很大的選擇余地。另外SSDBGrid還具有虛擬數(shù)據(jù)管理(virtual data management)技術(shù),在內(nèi)存中只存貯需顯示在界面上的記錄,這樣在處理大量數(shù)據(jù)時(shí)不致耗費(fèi)系統(tǒng)資源而影響運(yùn)行速度。SSDBGrid的缺點(diǎn)只是在有些版本中輸入漢字時(shí)會(huì)出現(xiàn)一些亂碼,但顯示漢字的效果很不錯(cuò)。 MSFlexGrid控件摘要:   MSFlexGrid和vsFlexArray在顯示數(shù)據(jù)方面有很多獨(dú)到之處,在運(yùn)行中可通過(guò)拖放來(lái)交換各列的位置,動(dòng)態(tài)地對(duì)數(shù)據(jù)進(jìn)行排序、分組合并等。vsFlexArray控件是VideoSoft公司的產(chǎn)品,MSFlexGrid的部分技術(shù)也來(lái)自此公司。 vaSpread控件摘要:

  vaSpread控件在處理數(shù)據(jù)方面有著更大的靈活性,它支持?jǐn)?shù)據(jù)綁定,虛擬數(shù)據(jù)管理等技術(shù),而且具備了電子表格的功能,編輯中可以使用剪貼板來(lái)剪切或復(fù)制單元格區(qū)域的數(shù)據(jù),單元格中也可以加入公式,借助Spread的計(jì)算引擎(Spread's Calc Engine)對(duì)數(shù)據(jù)進(jìn)行分析計(jì)算。Spread Designer還可方便地設(shè)計(jì)表格的格式,在單元格中加入按鈕、圖片、組合框等,自己設(shè)計(jì)的表格格式還能作為模板和數(shù)據(jù)分開(kāi)來(lái)保存。若想得到簡(jiǎn)單的報(bào)表,vaSpread的打印功能可直接把界面和數(shù)據(jù)打印出來(lái),而不需通過(guò)專門的報(bào)表打印控件。vaSpread是FarPointTechnologies公司的產(chǎn)品,網(wǎng)址為 http摘要://www.fpoint.com。 Formula One控件摘要: Formula One有更強(qiáng)的數(shù)據(jù)處理功能,是和Excel兼容的電子表格控件,在PowerBuilder中經(jīng)常用到,它來(lái)自Sybase下屬的Visual components公司,網(wǎng)址http摘要://www.visualcomp.com。l另外,PowerBuilder中,常用子窗口--Database Windows 的形式來(lái)顯示數(shù)據(jù)庫(kù)的構(gòu)成。如下圖,至于其使用方法,這里就不再贅述了。

64809