久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

VB實現(xiàn)窗口最小化小任務(wù)欄

時間:2019-05-14 17:57:20下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《VB實現(xiàn)窗口最小化小任務(wù)欄》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《VB實現(xiàn)窗口最小化小任務(wù)欄》。

第一篇:VB實現(xiàn)窗口最小化小任務(wù)欄

要實現(xiàn)窗口最小化必須滿足以下條件:

1:按下最小化按鈕,窗體不可見

2:最小化后,最小化窗體的圖標(biāo)必須出現(xiàn)在任務(wù)欄的通知區(qū)域中

3:當(dāng)雙擊通知區(qū)域中的圖標(biāo)時,窗體又顯示出來,同時通知區(qū)域中的圖標(biāo)消失.要滿足上面的條件:

1:首先屏蔽窗體中系統(tǒng)自帶的最小化圖標(biāo),即Form.MinButton=False

2:聲明1個API函數(shù):

Public Declare Function Shell_NotifyIcon Lib “shell32.dll” Alias “ Shell_NotifyIconA”(ByVal dwMessage As Long, lpData As NOTIFYICONDATA)As Long

注意:上面這個API函數(shù)在XP中沒有別名,將別名去掉后為:

Public Declare Function Shell_NotifyIcon Lib “shell32.dll”(ByVal dwMessage As Long, lpData As NOTIFYICONDATA)As Long

3:聲明7個常數(shù):

Public Const NIM_ADD = &H0

Public Const NIM_DELETE = &H2

Public Const NIF_ICON = &H2

Public Const NIF_MESSAGE = &H1

Public Const NIF_TIP = &H4

Public Const WM_MOUSEMOVE = &H200

Public Const WM_LBUTTONDBLCLK = &H203

4:定義1個NOTIFYICONDATA類型

Public Type NOTIFYICONDATA

cbSize as Long

hWnd as Long

uId as Long

uFlags as Long

uCallBackMessage as Long

hIcon as Long

szTip as String

End Type

5:聲明一個nid的類型

Public nid as NOTIFYICONDATA

思路清晰后,開始編寫代碼

1:在窗體中畫1個Command,它的Caption屬性為:“最小化”

2:將窗體Form的MinButton的屬性設(shè)為:“False”

3:在窗體中添加1個模塊,模塊中的代碼為:

Public Declare Function Shell_NotifyIcon Lib “shell32.dll”(ByVal dwMessage As Long, lpData As NOTIFYICONDATA)As Long

Public Const NIM_ADD = &H0

Public Const NIM_DELETE = &H2

Public Const NIF_ICON = &H2

Public Const NIF_MESSAGE = &H1

Public Const NIF_TIP = &H4

Public Const WM_MOUSEMOVE = &H200

Public Const WM_LBUTTONDBLCLK = &H203

Public Type NOTIFYICONDATA

cbSize as Long

hWnd as Long

uId as Long

uFlags as Long

uCallBackMessage as Long

hIcon as Long

szTip as String

End Type

Public nid as NOTIFYICONDATA

4:編寫Command的單擊事件:

Private Sub Command1_Click()

nid.cbSize = Len(nid)

nid.uId = vbNull

nid.hWnd = Me.hWnd

nid.uFlags = NIF_TIP Or NIF_MESSAGE Or NIF_ICON

nid.uCallBackMessage = WM_MOUSEMOVE

nid.hIcon = Me.Icon

nid.szTip = “窗體最小化”

Shell_NotifyIcon NIM_ADD, nid

Me.Hide

End Sub

5:編寫窗體的MouseMove事件:

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)Dim msg As Long

msg = X / 15

If msg = WM_LBUTTONDBLCLK Then

Me.Show

Shell_NotifyIcon NIM_DELETE, nid

End If

End Sub

按F5啟動,單擊Command,看看通知區(qū)域中是不是多了個窗體的圖標(biāo)?雙擊該圖標(biāo),窗體又顯示出來了!

第二篇:關(guān)閉win7任務(wù)欄小窗口和提示

Win7開了一些窗口時,在任務(wù)欄上就會有小窗口,而將鼠標(biāo)放在上面的時候,與 Xp不同的是,會出現(xiàn)小的提示窗口,而且會是很多個,形成了一排,如果想要關(guān)閉,怎么辦呢?

1.首先

如果想要將任務(wù)欄提示的窗口變成文字,只要在計算機-屬性-高級系統(tǒng)設(shè)置-高級-性能-設(shè)置;里面有個啟用桌面組合,去掉勾就可以了。

2.這樣的化,鼠標(biāo)放在任務(wù)欄上就會只有文字提示,但如果這個也不要的話,就修改注冊表; 運行-Regedit.exe

HKEY_CURRENT_USER Control Panel Mouse

右邊MouseHoverTime修改時間,加上5個0,這樣的話就達(dá)到了目的!

第三篇:隱藏任務(wù)欄開始菜單關(guān)閉桌面窗口

CWnd* pWnd = CWnd::FindWindow(_T(“Shell_TrayWnd”), NULL);//獲得任務(wù)欄窗口 pWnd->SendMessage(WM_HOTKEY, 0x1F5);//所有窗口最小化 ::ShowWindow(::FindWindow(“Shell_TrayWnd”,NULL), SW_HIDE);TCHAR caption[200];HWND parent=::FindWindow(“Shell_TrayWnd”,NULL);::GetWindowText(::GetWindow(parent,1), caption, 200);::ShowWindow(::GetWindow(parent, 1),SW_HIDE);::GetWindowText(::GetWindow(parent,3), caption, 200);::ShowWindow(::GetWindow(parent, 3),SW_HIDE);::GetWindowText(::GetWindow(parent,6), caption, 200);::ShowWindow(::GetWindow(parent, 6),SW_HIDE);

第四篇:ATM系統(tǒng)實現(xiàn)報告(VB)

面向?qū)ο蠓椒ㄔO(shè)計與實現(xiàn)報告

—ATM機系統(tǒng)

軟件0802班

高曉亮

200807040203

一、概要

根據(jù)ATM的需求分析,該系統(tǒng)設(shè)計為2個子系統(tǒng):用戶系統(tǒng)、銀行工作人員系統(tǒng)。其中用戶系統(tǒng)主要使用戶在ATM上完成一些基本操作,例如:存款、取款、轉(zhuǎn)賬、查詢余額、修改賬戶密碼等銀行工作人員系統(tǒng)主要用來管理用戶賬戶、ATM機、事務(wù)。其具體功能和界面及代碼將在下文敘述。

說明:該系統(tǒng)主要代碼是用vb編寫,數(shù)據(jù)庫使用的是單機數(shù)據(jù)庫access。

二、用戶系統(tǒng)

A:主要界面介紹: 一)、待機界面:

1、功能:系統(tǒng)歡迎界面,點擊模擬按鈕開始模擬ATM機工作。

2、說明:由于沒有找到合適的廣告圖片,所以待機默認(rèn)先用藍(lán)色背景代替。

3、界面文字動畫代碼如下:If Label5(0).Left > Me.ScaleWidth Then

Label5(0).Left = Me.Left100 End If

Label5(1).Move Label5(1).Left + 120

4、界面截圖如下:

二)、登陸界面:

1、功能:a、密碼框設(shè)置只能輸入6位

B、密碼輸入3次錯誤,將凍結(jié)該賬戶

C、銀行卡號不存在、凍結(jié)或密碼錯誤,均不能進(jìn)入系統(tǒng)

2、說明:因為各銀行卡號位數(shù)不太一樣,銀行卡號位數(shù)并未設(shè)置。

3、登陸確認(rèn)按鈕代碼如下: Private Sub Command27_Click()If Not Text7.Text = “" And Not Text8.Text = ”“ Then Dim sql As String sql = ”select * from 賬戶 where 銀行卡號='“ & Trim(Text7.Text)& ”'“

Adodc1.RecordSource = sql

Adodc1.Refresh

If Adodc1.Recordset(”狀態(tài)“)= ”凍結(jié)“ Then '判斷該賬戶狀態(tài)

MsgBox ”該賬戶已凍結(jié)!“

Text7.Text = ”“

Text8.Text = ”“

Else

sql = ”select * from 賬戶 where 銀行卡號='“ & Trim(Text7.Text)& ”' and 密碼=“ & Trim(Text8.Text)& ”“

Adodc1.RecordSource = sql

Adodc1.Refresh

If Adodc1.Recordset.EOF Then

MsgBox ”密碼錯誤!“, 48, ”錯誤提示“

Text8.Text = ”“

count1 = count1 + 1

If count1 >= 3 Then '三次輸入錯誤凍結(jié)該賬戶

Adodc1.Refresh

sql = ”select * from 賬戶 where 銀行卡號='“ & Trim(Text7.Text)& ”'“

Adodc1.RecordSource = sql

Adodc1.Refresh

Adodc1.Recordset(”狀態(tài)“)= ”凍結(jié)“

Adodc1.Recordset.Update

MsgBox(”三次輸入錯誤,該賬戶已被凍結(jié)“)

End If

Else

Label10.Visible = False

Label11.Visible = False

Text7.Visible = False

Text8.Visible = False

Command27.Visible = False Command28.Visible = False Command14.Visible = True Command15.Visible = True Command16.Visible = True Command17.Visible = True Command18.Visible = True Command19.Visible = True Command24.Visible = True Ynum = Text7.Text Adodc2.Refresh ’添加事務(wù) Adodc2.Recordset.AddNew

Adodc2.Recordset(”銀行卡號“)= Ynum

Adodc2.Recordset(”事務(wù)類型“)= ”用戶登錄“

Adodc2.Recordset(”時間“)= Now()

Adodc2.Recordset(”事務(wù)描述“)= ”用戶完成登陸“

Adodc2.Recordset.Update

Adodc2.Refresh Text7.Text = ”“ Text8.Text = ”“ End If End If Else MsgBox(”信息不全!請確認(rèn)“)End If End Sub

4、界面截圖如下:

三)、系統(tǒng)主界面

1、功能:ATM的主要功能陳列,供用戶選擇,其中包括存款、取款、轉(zhuǎn)賬、查詢余額、修改密碼、取卡、返回。當(dāng)賬戶登錄時,將在事務(wù)表中記錄登錄時間。

2、說明:由于所有按鈕均只是用來調(diào)出對應(yīng)的功能的界面,并沒有實際功能,所以在此省略其按鈕代碼。

3、界面截圖如下:

四)、存款界面

1、功能:a、只允許用戶輸入100的整數(shù)值

b、當(dāng)文本框為空時報錯

c、實現(xiàn)用戶的存款功能

d、每存入一筆款,都將在事務(wù)表中記錄該操作

2、存款代碼如下:If Not Text12.Text = ”“ Then If Val(Text12.Text)Mod 100 = 0 Then Adodc1.Refresh Adodc1.Recordset(”余額“)= Adodc1.Recordset(”余額“)+ Val(Text12.Text)Adodc1.Recordset.Update Adodc1.Refresh Label15.Caption = ”存款成功“ ye = ye + Text12.Text Adodc2.Refresh Adodc2.Recordset.AddNew

Adodc2.Recordset(”銀行卡號“)= Ynum

Adodc2.Recordset(”事務(wù)類型“)= ”存款“

Adodc2.Recordset(”時間“)= Now()

Adodc2.Recordset(”事務(wù)描述“)= ”用戶存入“ & Text12.Text & ”元“

Adodc2.Recordset.Update

Adodc2.Refresh Text12.Text = ”“ Command33.Enabled = True Command32.Enabled = False Else MsgBox ”請輸入100的整數(shù)“ End If Else Label15.Caption = ”無款可存“ End If End Sub

3、界面截圖如下:

四)、取款界面

1、功能:a、用戶按相對應(yīng)數(shù)值的按鈕進(jìn)行取款

b、每個賬戶每天取款數(shù)不能超過2500

c、賬戶余額不足時,報錯

d、用戶每取走一筆款額,都將在事務(wù)表中記錄取走金額和時間

2、說明:由于不同數(shù)值按鈕的代碼很相似,所以這里僅給出100按鈕的代碼

3、存款代碼如下:Private Sub Command20_Click()Adodc1.Refresh If Adodc1.Recordset(”余額“)>= 100 Then Adodc1.Refresh Adodc1.Recordset(”余額“)= Adodc1.Recordset(”余額“)100 Adodc2.Refresh Adodc2.Recordset.AddNew

Adodc2.Recordset(”銀行卡號“)= Ynum

Adodc2.Recordset(”事務(wù)類型“)= ”取款“

Adodc2.Recordset(”時間“)= Now()

Adodc2.Recordset(”事務(wù)描述“)= ”用戶取走100元“

Adodc2.Recordset.Update

Adodc2.Refresh Else Label15.Caption = ”余額不足,取款失敗“ End If End Sub

4、取款界面截圖如下:

五)、查詢余額界面

1、功能:實現(xiàn)用戶查詢對應(yīng)賬戶的余額

2、查詢余額代碼如下:Private Sub Command17_Click()Command14.Visible = False Command15.Visible = False Command16.Visible = False Command17.Visible = False Command18.Visible = False Command19.Visible = False Label6.Visible = False Label7.Visible = False sql = ”select 余額 from 賬戶

where 銀行卡號= '“ & Ynum & ”'“ Adodc1.RecordSource = sql Adodc1.Refresh Label8.Caption = Adodc1.Recordset.Fields(”余額“)Adodc2.Refresh Adodc2.Recordset.AddNew

Adodc2.Recordset(”銀行卡號“)= Ynum

Adodc2.Recordset(”事務(wù)類型“)= ”查詢余額“

Adodc2.Recordset(”時間“)= Now()

Adodc2.Recordset(”事務(wù)描述“)= ”查詢余額“

Adodc2.Recordset.Update

Adodc2.Refresh Label9.Visible = True Label8.Visible = True End Sub

3、查詢余額界面截圖如下:

六)、轉(zhuǎn)賬界面

1、功能:a、實現(xiàn)用戶轉(zhuǎn)賬

b、需2次確認(rèn)賬戶信息,若信息輸入不全,賬戶余額不足,2次輸入不一樣,均不可完成轉(zhuǎn)賬

c、用戶每轉(zhuǎn)一筆賬,均將在事務(wù)表中記錄轉(zhuǎn)賬金額和時間

2、轉(zhuǎn)賬代碼如下:Private Sub Command30_Click()If Not Text11.Text = ”“ And Not Text10.Text = ”“ And Not Text9.Text = ”“ Then If Text10.Text = Text9.Text Then Adodc1.Refresh If Adodc1.Recordset(”余額“)>= Val(Text11.Text)Then Adodc1.Refresh Adodc1.Recordset(”余額“)= Adodc1.Recordset(”余額“)Me.picLOAD.Width)/ 2 'Me.picLOAD.Top = Me.ScaleHeight / 2Me.picLOAD.Width)/ 2 'Me.picLOAD.Top = Me.ScaleHeight / 2Me.picLOAD.Width)/ 2 'Me.picLOAD.Top = Me.ScaleHeight / 2-Me.picLOAD.Height Me.picLOAD.Visible = True 'DoEvents '釋放控制權(quán)

Me.ListView1.ListItems.Clear Dim addLIST As ListItem Dim ss As String Dim sql As String ss = App.Path + ”datadata.mdb“ Adodc1.ConnectionString = ”Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=gxl;Persist Security Info=False;Data Source=“ & ss Adodc1.CommandType = adCmdText sql = ”select * from ATM“ Adodc1.RecordSource = sql Adodc1.Refresh '連接數(shù)據(jù)庫

Do While Not Adodc1.Recordset.EOF Set addLIST = ListView1.ListItems.Add(, , Adodc1.Recordset!ATM機編號, , i)addLIST.SubItems(1)= IIf(IsNull(Adodc1.Recordset.Fields(”狀態(tài)“).Value), Adodc1.Recordset.Fields(”狀態(tài)“).Value)addLIST.SubItems(2)= IIf(IsNull(Adodc1.Recordset.Fields(”余額“).Value), Adodc1.Recordset.Fields(”余額“).Value)Adodc1.Recordset.MoveNext Loop Me.picLOAD.Visible = False End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)Select Case Button.Index

Case Is = 2 '

ZhZCfrm.Show 1

Case Is = 3

' ZHZXfrm.Show 1

Case Is = 4

Call addLIST End Select End Sub

3、界面截圖:

”“, ”“,六)、單位信息界面

1、功能:顯示單位信息

2、代碼: Private Sub cmdBC_Click()'修改銀行信息 Dim s As String If Not Text1(0).Text = ”“ And Not Text1(1).Text = ”“ And Not Text1(2).Text = ”“ And Not Text1(3).Text = ”“ And Not Text1(4).Text = ”“ Then

s = ”update 銀行信息 set 銀行名稱='“ & Text1(0).Text & ”',銀行地址='“ & Text1(1).Text & ”',郵政編號='“ & Text1(2).Text & ”',負(fù)責(zé)人='“ & Text1(3).Text & ”', 聯(lián)系電話='“ & Text1(4).Text & ”'“

Adodc1.RecordSource = s

MsgBox(”修改成功“)

Adodc1.Recordset.Update

Else

MsgBox ”修改信息不全,請檢查!“

End If End Sub

Private Sub Form_Load()Dim ss As String Dim sql As String ss = App.Path + ”datadata.mdb“ Adodc1.ConnectionString = ”Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=gxl;Persist Security Info=False;Data Source=“ & ss Adodc1.CommandType = adCmdText sql = ”select * from 銀行信息“ Adodc1.RecordSource = sql Adodc1.Refresh '連接數(shù)據(jù)庫 End Sub

3、界面截圖:

七)、下面給出數(shù)據(jù)備份還原的代碼 Private Sub a14_Click()On Error GoTo ERR_line newname = App.Path & ”datadata.mdb“ datapath = App.Path & ”backup“ & Date & ” 備份卡.bak“ FileCopy newname, datapath MsgBox ”數(shù)據(jù)已備份到

“ & datapath, 64, ”提示“ Exit Sub ERR_line: MsgBox ”不能完成數(shù)據(jù)備份!“, 48, ”運行錯誤“ End Sub

Private Sub a15_Click()On Error GoTo ERR_line

Me.CommonDialog1.ShowOpen

snewname = Me.CommonDialog1.FileName

sdatapath = App.Path & ”datadata.mdb“

If snewname <> ”“ Then

If MsgBox(”還原后將覆蓋原有數(shù)據(jù),確定還原嗎?“, vbInformation + vbYesNo, ”提示“)= vbYes Then

FileCopy snewname, sdatapath

MsgBox ”數(shù)據(jù)已經(jīng)成功還原!請重新登陸 “, 48, ”提示“

Unload Me

Formload.Show

Else

Exit Sub End If

End If Exit Sub

ERR_line: MsgBox ”不能完成數(shù)據(jù)還原,請進(jìn)入系統(tǒng)后未做任何操作時進(jìn)行!“, 48, ”運行錯誤" End Sub

四、數(shù)據(jù)庫

本系統(tǒng)使用的是access數(shù)據(jù)庫。數(shù)據(jù)庫密碼為gxl。本系統(tǒng)共有5張表,分別為:ATM,事務(wù),系統(tǒng)用戶表,銀行信息,賬戶。

下面給出數(shù)據(jù)庫的相關(guān)截圖。

1、表圖:

2、ATM的設(shè)計視圖

3、事務(wù)的設(shè)計視圖

4、系統(tǒng)用戶表的設(shè)計視圖

5、銀行信息的設(shè)計視圖

6、賬戶的設(shè)計視圖

第五篇:基于VB實現(xiàn)復(fù)雜報表設(shè)計

陜西理工學(xué)院畢業(yè)設(shè)計

基于VB實現(xiàn)復(fù)雜報表設(shè)計

(陜西理工學(xué)院 物理系 電子信息科學(xué)與技術(shù)07級2班,陜西 漢中 723000)

[摘要] 本文介紹了報表設(shè)計的幾種方法和以往報表設(shè)計所存在的問題,并以實例介紹自動生成復(fù)雜報表的方法。實例基于VB軟件開發(fā),并以word為模板,通過調(diào)用access數(shù)據(jù)庫數(shù)據(jù)自動生成復(fù)雜報表。

[關(guān)鍵詞]VB;數(shù)據(jù)庫;Word;復(fù)雜報表

The Design Of Complex Reports Based VB

(Grade 2007,Class2, Major electronical information and technology,Physics Dept, Shaanxi University of Technology,Hanzhong 723000,Shaanxi)

[Abstract] This paper reports detailed description of several common methods, previous reports of the existence of the problem, and makes use of example to achieve a complex reporting by using of software.The example based on VB software and used word template, to achieve the common complex reporting software through reallocating database.[Key words] VB;Database;Word;Complex Statements

陜西理工學(xué)院畢業(yè)設(shè)計

1引言

報表是人們在日常生活中對某類相關(guān)信息進(jìn)行集中處理的重要手段,是企業(yè)信息化不可缺少的部分。報表在各行各業(yè)中應(yīng)用廣泛,是信息瀏覽、分析和打印的有力工具。傳統(tǒng)報表系統(tǒng)均以國外簡單報表模型為基礎(chǔ)設(shè)計,不能適應(yīng)復(fù)雜報表的開發(fā)。特別是在處理復(fù)雜數(shù)據(jù)源報表時,常常需要編寫代碼準(zhǔn)備數(shù)據(jù)或進(jìn)行子報表拼接才能實現(xiàn)。1.1傳統(tǒng)報表系統(tǒng)存在的問題

目前,國內(nèi)外的報表系統(tǒng)種類繁多,功能界面各具特色,對這些報表系統(tǒng)的比較研究,有助于我們設(shè)計出更好的報表系統(tǒng)。國外的報表系統(tǒng)的技術(shù)都比較成熟,適合制作樣式簡單的報表,但一般都為高端產(chǎn)品,價格不菲,并且在處理具有強烈中國特色的報表時,國外產(chǎn)品不僅報表處理能力相當(dāng)不適應(yīng),甚至某些技術(shù)也略顯落后,例如部分產(chǎn)品不能穩(wěn)定地在UNIX上部署,只能支持IE瀏覽器,統(tǒng)計圖輸出仍采用原始的CGl方式等。國內(nèi)的傳統(tǒng)報表系統(tǒng)更適合制作復(fù)雜的中國式報表,在報表設(shè)計和價格等方面國內(nèi)報表系統(tǒng)也具有一些優(yōu)勢,但國內(nèi)的報表系統(tǒng)在服務(wù)質(zhì)量和產(chǎn)品本身的品質(zhì)等方面還存在著一些不足和缺陷,有待進(jìn)一步的改進(jìn)和完善。無論是國外的高端報表系統(tǒng),還是國內(nèi)的傳統(tǒng)報表系統(tǒng),每一種報表系統(tǒng)都有各自的優(yōu)點和缺點,都有各自擅長的領(lǐng)域,在實際工作中應(yīng)該根據(jù)需要選擇合適的報表系統(tǒng)。面對日益復(fù)雜的報表開發(fā)需求,尤其是復(fù)雜的中國式報表,這些報表系統(tǒng)或多或少都有些力不從心,其主要問題表現(xiàn)在以下三個方面:

(1)復(fù)雜數(shù)據(jù)源的處理能力不足。報表需要從復(fù)雜的數(shù)據(jù)源或者多個不同類型的數(shù)據(jù)源中獲得數(shù)據(jù),獲得的數(shù)據(jù)還可能需要統(tǒng)計,格式轉(zhuǎn)換或其他處理,這些需求都是傳統(tǒng)報表系統(tǒng)難于實現(xiàn)的。

(2)報表的可維護(hù)性差。傳統(tǒng)的報表系統(tǒng)生成報表的種類固定,使用方便,但很多軟件系統(tǒng)無論在實施還是在維護(hù)階段,報表都會進(jìn)行頻繁的新增和修改,而傳統(tǒng)的報表系統(tǒng)缺乏無編碼定制能力,系統(tǒng)擴展網(wǎng)難。一旦用戶對報表樣式的需求發(fā)生改變,就會給軟件維護(hù)帶來許多不必要的麻煩。

(3)報表保存格式的通用性較差。報表保存格式不統(tǒng)一,保存格式理解困難,各種報表工具各自為政,報表模板無法兼容,行業(yè)也沒有形成統(tǒng)一的標(biāo)準(zhǔn),一旦用戶選定了某一報表工具就意味著要一直使用。如果不幸選擇失誤,已經(jīng)做的工作都要重新再來。

總之,利用傳統(tǒng)的報表系統(tǒng)制作報表維護(hù)量相當(dāng)大,一個需求對應(yīng)一個報表文件,不同

陜西理工學(xué)院畢業(yè)設(shè)計 的組合要求制作大量的報表文件,使得開發(fā)過程變得極為繁瑣,難以實現(xiàn)用戶的需求。在設(shè)計復(fù)雜數(shù)據(jù)源的報表時,或者需要人工轉(zhuǎn)換數(shù)據(jù)格式,或者要編寫大量代碼將多個數(shù)據(jù)源運算成為一個數(shù)據(jù)源再使用,或者使用拼接子報表的方式來實現(xiàn),但都沒有從根本上解決問題,嚴(yán)重影響報表的設(shè)計和使用效率。因此如何快速制作符合多層結(jié)構(gòu)特點的復(fù)雜數(shù)據(jù)源報表,減輕開發(fā)工作量,已經(jīng)成為報表系統(tǒng)開發(fā)的重要問題。

在計算機出現(xiàn)之前,數(shù)據(jù)需要以紙制文件等形式保存,數(shù)據(jù)處理是手工進(jìn)行的,報表的編制也是手工實現(xiàn)的。隨著計算機的廣泛應(yīng)用,人們開始使用計算機及計算機軟件實現(xiàn)數(shù)據(jù)處理,使用數(shù)據(jù)庫管理系統(tǒng)來管理數(shù)據(jù),使用應(yīng)用程序來完成具體的業(yè)務(wù)操作,報表的編制也開始使用軟件來實現(xiàn)。完成報表編制工作的軟件程序稱為報表系統(tǒng)或者報表工具。報表系統(tǒng)的產(chǎn)生改變了報表編制的流程、方法以及編制手段。

報表是信息管理系統(tǒng)中各種數(shù)據(jù)信息的最終輸出結(jié)果,是其重要的組成部分。在信息管理系統(tǒng)的開發(fā)過程中,軟件設(shè)計人員常常需要設(shè)計大量的報表,其中相當(dāng)一部分報表的結(jié)構(gòu)比較類似,需要軟件設(shè)計人員逐一定義每一個報表的報表對象、數(shù)據(jù)模型、顯示格式等屬性,同時還可能對數(shù)據(jù)存儲、導(dǎo)入和導(dǎo)出等操作帶來諸多不便,這些繁瑣的重復(fù)性工作常常花費軟件設(shè)計人員、操作人員、維護(hù)人員大量的精力和時間,影響系統(tǒng)的開發(fā)、使用效率。同時,報表還是信息管理系統(tǒng)中變化性很強的部分。應(yīng)用系統(tǒng)交付用戶后,隨著時間的推移,用戶可能需要新的報表,報表的格式、報表的數(shù)據(jù)要求都有可能發(fā)生變化,用戶的各種各樣的報表要求,僅依靠應(yīng)用系統(tǒng)預(yù)先提供的報表是很難實現(xiàn)的。

從報表系統(tǒng)的發(fā)展歷史來看,在應(yīng)用系統(tǒng)進(jìn)入數(shù)據(jù)共享的時候,比較專業(yè)的報表系統(tǒng)或控件就出現(xiàn)了,并且一直沿用至今。這些工具的理論模型和需求都出自于國外的需求,這種模型和需求比較符合國外用戶的使用習(xí)慣,比較適合設(shè)計制作樣式非常規(guī)整,沒有表格線,沒有斜線表頭和分層分組的簡單報表。然而中國人的報表習(xí)慣與國外用戶存在很大差別,中國的報表也比國外的報表復(fù)雜許多。報表是由“報’’和“表"兩部分組成,“報”指數(shù)據(jù)的匯總統(tǒng)計,即將數(shù)據(jù)從數(shù)據(jù)庫中取出按一定規(guī)則運算統(tǒng)計后排列。“表”則指格式,數(shù)據(jù)需要放在單元格中,才能清楚定位,體現(xiàn)數(shù)據(jù)之間的層次與對應(yīng)關(guān)系。目前市場上的報表系統(tǒng)大致分為兩類,一類基本上能把數(shù)據(jù)庫的數(shù)據(jù)取出來運算排列制作出動態(tài)的報表。但其格式設(shè)計功能不好,一般是采用控件拖放的方式編輯報表,靠一個個矩形邊線重合對齊繪制表格,一條直線要拼接多條線段,而且還和分辨率相關(guān),打印出來不整齊。還有一類仿制Excel的產(chǎn)品,合并單元格、添加邊框非常方便,可以快捷地設(shè)計出一個復(fù)雜格式的報表。但它們的缺點是數(shù)據(jù)處理能力太弱,除了簡單的格內(nèi)運算外,與數(shù)據(jù)庫打交道的過濾、分組等統(tǒng)計運算都需要編程實現(xiàn)。

中國報表最困難的地方是數(shù)據(jù)統(tǒng)計。中國報表具有的多數(shù)據(jù)源、整表規(guī)則分片、不完全劃分、跨行組運算及獨立格間運算、行列對稱等特征,是傳統(tǒng)報表系統(tǒng)無法滿足的,常常導(dǎo)致要求編寫代碼準(zhǔn)備數(shù)據(jù)或拼接子報表才能完成一個復(fù)雜報表的制作。表樣格式復(fù)雜也是中國報表比較麻煩的地方,中國報表均要求有整齊的表格線,多層表頭層次分明。業(yè)內(nèi)有名的報表系統(tǒng)一般采用控件式拖拽的繪制方案,制作表格非常煩瑣,且還與分辨率相關(guān),屏幕與打印不一致,而中國報表對打印樣式要求向來很高。中國報表還會有填寫的需求,前端需要支持各種填寫控制,如編輯風(fēng)格、自動計算、合法性校驗等;填寫好的數(shù)據(jù)能夠方便地寫入數(shù)據(jù)庫以進(jìn)行下一步的統(tǒng)計匯總。而很多報表軟件不支持填寫能力,一般的填報解決方案都不能自動處理數(shù)據(jù)入庫的問題,導(dǎo)致相應(yīng)的編程工作量仍然很大。1.2國內(nèi)外研究現(xiàn)狀

大部分通用軟件領(lǐng)域,國外產(chǎn)品都要相對優(yōu)秀。早期的報表系統(tǒng)軟件是由國外的公司和研究機構(gòu)設(shè)計實現(xiàn)的,適合制作樣式非常規(guī)整,沒有格線,表頭簡單的國外報表。國外的報表系統(tǒng)都具有各自的原創(chuàng)技術(shù),又經(jīng)過了多年的發(fā)展和完善,其技術(shù)相對都比較成熟,但是國外的報表系統(tǒng)在報表樣式繪制方面的能力比較弱,在價格上一般都比較昂貴,所以經(jīng)常被稱作高端產(chǎn)品。例如挪威QuSoR公司專門為Delphi編寫的QuickRepon報表組件,使用

陜西理工學(xué)院畢業(yè)設(shè)計 QuickReport可以迅速設(shè)計出符合西方人習(xí)慣的報表,從功能和設(shè)計上來說,不失為一個較好的報表設(shè)計工具,但對于報表設(shè)計的靈活性,及在程序編譯完畢后用戶對報表的可修改性等方面還遠(yuǎn)遠(yuǎn)不能滿足用戶的需要。

國外典型報表系統(tǒng)中,著名的有Excel,Cwstal Report,F(xiàn)o徹ula One等,隨著.NET技術(shù)的不斷發(fā)展,近年來國外已經(jīng)出現(xiàn)了一些基于.NET環(huán)境的報表系統(tǒng),例如MicrosoR的Reporting Services技術(shù),Ⅵsual Studio 2005集成的報表解決方案,C搿stal Reports f1叫Visual Studio.NET,Developer Express公司開發(fā)的X仃aReports報表組件和ComponentOne公司開發(fā)的C 1 Reports報表組件等等。其中MicrosoR的Reportillg Services技術(shù)是基于服務(wù)器的報表解決方案,可以用來創(chuàng)建和管理包含關(guān)系數(shù)據(jù)源和多維數(shù)據(jù)源中的數(shù)據(jù)的表格、矩陣、圖形和自由格式的報表,并可通過網(wǎng)絡(luò)連接來查看和管理報表。Reporting Services在報表的制作、分發(fā)和報表數(shù)據(jù)的安全性等方面都有很好的表現(xiàn),功能比較全面,但是需要微軟眾多企業(yè)級解決方案的支持,并且價格相當(dāng)昂貴。

國內(nèi)的報表系統(tǒng)主要是使用Java和Visual C++設(shè)計實現(xiàn)的傳統(tǒng)報表系統(tǒng),傳統(tǒng)報表系統(tǒng)是指一些主要以條帶式設(shè)計為基礎(chǔ)的開源軟件以及國內(nèi)的一些仿制產(chǎn)品。這些報表系統(tǒng)的數(shù)學(xué)模型都是基于SQL/OLAP理論設(shè)計的,雖然不斷地進(jìn)行改進(jìn),但根本處理方案并沒有本質(zhì)的變化,遠(yuǎn)遠(yuǎn)不能滿足國內(nèi)復(fù)雜報表的制作需求。近年來不斷推出的新版本以及新報表系統(tǒng)都只是在技術(shù)上改進(jìn),如從C/S移植到B/S、支持JaVa等,而理論模型仍是原來的傳統(tǒng)方式,所以仍然算是傳統(tǒng)報表系統(tǒng)。傳統(tǒng)報表系統(tǒng)最顯著的特征是主編輯畫面呈條帶狀,以模擬SQL中的seIect和Group運算;大部分報表系統(tǒng)采用繁瑣的拖拽式編輯(有個別報表系統(tǒng)開始采用方便的表格式);交叉表要采用專門的類OLAP模型處理,樣式和運算都比較死板。

國內(nèi)比較有名的報表系統(tǒng)基本上都是Java報表系統(tǒng),主要有用友華表(Cell)和潤乾報表等。潤乾報表是一個功能非常強大的純Java報表產(chǎn)品,各方面都很出色,其新一代報表模型采用了革命性的多源分片、不規(guī)則分組、動態(tài)格間運算、行列對稱等技術(shù),能設(shè)計實現(xiàn)很多原來傳統(tǒng)報表系統(tǒng)中很復(fù)雜,甚至很難實現(xiàn)的報表。但是由于潤乾報表設(shè)計方式完全依賴手寫表達(dá)式,對于沒有編程基礎(chǔ)的普通用戶來說,學(xué)習(xí)使用潤乾報表的難度較大。1.3常見的典型報表工具及其介紹

目前常見的典型報表工具中,著名的有Excel,UniversalForms,Oracle9i Reports,F(xiàn)ormula One等,國內(nèi)也推出了許多報表工具。對現(xiàn)有報表工具的比較研究,有助于我們設(shè)計出更好的報表工具。1.3.1 Excel Excel是歷史悠久的電子表格程序之一,功能強大。許多后來出現(xiàn)的Windows報表系統(tǒng)均受其影響,甚至在功能和界面上加以模仿。Excel具有如下特點:

(1)可視化界面:Excel提供工作簿和工作表,一個工作簿包括若干張工作表,一張工作表即是一張報表。每張工作表由若干單元格組成,每個單元格可以單獨操縱:設(shè)計單元格的數(shù)據(jù)格式,定義數(shù)據(jù)公式等。對報表作出修改后,可以立即看到修改效果;

(2)豐富的格式支持:Excel報表中可以包括文字,數(shù)字,圖形等多種內(nèi)容;提供文字的字體大小、顏色,數(shù)字的顯示格式等格式控制;

(3)豐富的數(shù)據(jù)處理功能:提供多種數(shù)據(jù)處理函數(shù):數(shù)據(jù)庫函數(shù)、日期與時間函數(shù)、工程函數(shù)、財務(wù)函數(shù)、邏輯函數(shù)、查詢和引用函數(shù)、數(shù)學(xué)和三角函數(shù)、統(tǒng)計函數(shù)、文本函數(shù);

(4)支持多種數(shù)據(jù)源,可訪問的數(shù)據(jù)庫包括: Microsoft SQL Server OLAP Services、Microsoft Access 2000、dBASE、Microsoft FoxPro、Microsofl Excel、Oracle、Paradox、陜西理工學(xué)院畢業(yè)設(shè)計 SQL Server以及文本文件數(shù)據(jù)庫,此外,還可以使用ODBC驅(qū)動程序或數(shù)據(jù)源驅(qū)動程序以獲取其他類型數(shù)據(jù)庫中的信息。

(5)WEB發(fā)布支持

Excel支持將報表放置到Web頁上,用戶不需要在計算機上安裝Excel就可以訪問報表。(6)支持交互式報表

如果希望用戶可以與報表中的數(shù)據(jù)進(jìn)行交互,則可以將數(shù)據(jù)設(shè)置為交互式。在交互式報表中,用戶可以進(jìn)行以下操作:篩選,輸入新值以進(jìn)行計算或匯總和分析數(shù)據(jù)。

(7)提供編程環(huán)境

EXcel提供了Visual Basic for Applications(VBA)和Ⅵsual Basic編程環(huán)境,同時支持OLE。用戶可以使用VBA編寫自定義函數(shù),實現(xiàn)對已有數(shù)據(jù)處理函數(shù)庫 的擴充,滿足實際需要,但有時編程相對比較復(fù)雜。1.3.2 Crystal Report Crystal Report是Crystal Decisions公司推出的比較著名的報表系統(tǒng),使用Crystal Report是一種大型報表系統(tǒng)常用和推薦的解決方案。它能夠?qū)崿F(xiàn)對數(shù)據(jù)的檢索、分組、分析,并把分析結(jié)果以表格的方式展現(xiàn)給用戶,為用戶解決現(xiàn)實中各種各樣的商業(yè)問題。與其他的報表創(chuàng)建和分析軟件相比,Crystal Report軟件具有穩(wěn)定性、可伸縮性以及應(yīng)用平臺廣泛等優(yōu)點。Crystal Report不僅有功能強大的Java版的Crystal Report報表引擎,而且也有直接集成到了Visual Studio開發(fā)環(huán)境當(dāng)中來使用的Crystal Report for visual Studio.NET,開發(fā)人員可以從任何項目訪問報表編輯器,完成顯示、統(tǒng)計、分組和插入圖表等多種操作,它也允許和各種主要的Java集成開發(fā)環(huán)境集成在一起。Crystal Report主要具備以下一些功能:

(1)形式多樣的內(nèi)容創(chuàng)建:允許用戶添加圖表、下拉式菜單、警示、參數(shù)提示以及超鏈接,并將報表轉(zhuǎn)化為引入注目的交互式文件或Web內(nèi)容,使用標(biāo)志、圖畫、形狀和色彩來定制報表。而且內(nèi)置了廣泛的公式,使得開發(fā)人員可以對于報表格式、綜合業(yè)務(wù)邏輯和數(shù)據(jù)進(jìn)行全面的控制;

(2)支持多數(shù)據(jù)源:可以直接編輯SQL,以便不受限制地控制數(shù)據(jù)庫連接。數(shù)據(jù)源包括XML,OLAP或其它相關(guān)的內(nèi)容。通過在Microsoft Excel和Access中的Crystal Reports Add-in功能,用戶可以利用現(xiàn)有的Microsoft數(shù)據(jù)創(chuàng)建報表;

(3)提供分析工具:Crystal Report提供趨勢判斷、促進(jìn)入際關(guān)系和保留重要論據(jù)的工具。另外附屬報表、公式、總計運算,以及可自定義的交叉標(biāo)簽提供了更進(jìn)一步的分析能力;

(4)支持Web應(yīng)用:利用Web的權(quán)限設(shè)置功能,Crystal Report讓所有在不同平臺和地點的用戶都可以訪問報表。Crystal Report與Report Streaming技術(shù)相結(jié)合,以最優(yōu)化處理報表在線需求(即時)和Web報表排序次序的效能。

Crystal Report幫助開發(fā)者做出了大量的報表,它的功能也在不斷地加強。但是,開發(fā)人員也經(jīng)歷了很多時刻,不僅僅是費勁地去畫格子,擺位置,更發(fā)現(xiàn)很多報表,需要先做一個復(fù)雜的視圖,甚至寫程序準(zhǔn)備數(shù)據(jù);發(fā)現(xiàn)許多報表運行起來的效率會很低;發(fā)現(xiàn)有些報表很難做出來。另外,Crystal Report for Visual Studio.NET未注冊版本功能可用。在此之后的Save Option將不能使用。為了使用全部的功能,你不得不為之付費。1.3.3 Fomula One 它是一個OLE ActiveX報表控制引擎,支持Excel電子表格的編輯與運行,F(xiàn)ormuloone6以前為基于C/S環(huán)境,其后的版本(如Repert,SPreodsheet等)主要面向B/S環(huán)境。胡于進(jìn)等(2004)在它的基礎(chǔ)上設(shè)計新報表組件FIBOOKREPORT,其主要具有以下特點:

(1)可以嵌入到應(yīng)用程序中提供報表功能,也可以獨立使用;

(2)支持HTML格式輸出:它包括一組API,能夠?qū)⑦x定范圍的表格輸出到一個HTML文件中;

(3)內(nèi)置計算器:具有強大的電子表格功能,且與Excel兼容;

陜西理工學(xué)院畢業(yè)設(shè)計(4)編程支持:Formula One包含了廣泛而豐富的API函數(shù),幫助開發(fā)者靈活自如地控制電子表格的制作,為程序員提供了便利的電子表格設(shè)計工具箱。

雖然,目前通用報表有了較大的發(fā)展,但是在實際應(yīng)用中,既開源免費或價格便宜,又能滿足用戶要求通用報表系統(tǒng)能夠簡單靈活地實現(xiàn)連接數(shù)據(jù)源、設(shè)定報表樣式等的報表很少,市場上的報表系統(tǒng)存在以下不足:

1.工作量大:企業(yè)的需求是動態(tài)、復(fù)雜、多變的。目前的報表系統(tǒng)中,出于數(shù)據(jù)的顯示或打印格式都是由程序員根據(jù)客戶需要直接在程序制作期間生成的。如果報表的科目稍有變化,都需重新編譯程序發(fā)布,加重了程序員的維護(hù)工作量;

2。缺乏靈活性:目前的通用報表系統(tǒng)是不可以自定義取數(shù)據(jù)源與取函數(shù)或公式,而只能選擇系統(tǒng)提供的有限的取數(shù)函數(shù)與公式來自定義報表,如果需要實現(xiàn)對這些取數(shù)函數(shù)或公式以外的數(shù)據(jù)資源的訪問就十分不方便;

3.未實現(xiàn)跨平臺連接多個數(shù)據(jù)源:目前的報表大部分只能實現(xiàn)連接單一目標(biāo)數(shù)據(jù)源,未能實現(xiàn)跨平臺連接多個數(shù)據(jù)源,即不能實現(xiàn)異構(gòu)數(shù)據(jù)庫。例如Excel,水晶報表等都只能連接多種數(shù)據(jù)源,但不能實現(xiàn)同時。

2在VB中利用word實現(xiàn)復(fù)雜報表

在數(shù)據(jù)庫應(yīng)用系統(tǒng)中開發(fā)word 文檔自動生成程序,可以實現(xiàn)以下功能:文檔自動生成;自動添加頁眉頁腳;目錄自動生成;格式自動調(diào)整;文檔格式大眾化,便于傳輸與交流;對大文檔、復(fù)雜表格處理具有明顯優(yōu)勢:可依用戶要求智能化地生成風(fēng)格各異的文檔等等。實踐證明,在數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)中,用word文檔自動生成程序取代傳統(tǒng)的數(shù)據(jù)庫報表輸出,使得開發(fā)的數(shù)據(jù)庫應(yīng)用系統(tǒng)的報表處理大大改觀,優(yōu)點突出,很值得推廣,本文就是基于word實現(xiàn)復(fù)雜報表的設(shè)計。2.1 VB中Word對象模型

在VB調(diào)用Word之前,首先要引進(jìn)對象庫,然后才能以Word為對象編程。引進(jìn)Word對象庫的方法是:在編程環(huán)境下,選擇“工程”菜單,選中“引用”項,打開“引用”對話框,在“可用的引用”列表中選中“Microsoft Word11.0 Object Library”,即可在Word中引進(jìn)對象庫。

Visual Basic支持的Word對象集合直接對應(yīng)于Microsoft Word中的各個元素。例如,Document對象代表了一個打開的文檔,Bookmark對象代表了一個文檔中的書簽,而Selection對象則代表了在一個文檔窗口窗格中的選定內(nèi)容。在Word中,每一類元素(文檔、表格、段落、書簽、域等等)都可以用Visual Basic的對象來表示。要在Word中自動執(zhí)行任務(wù),可以使用這些對象的方法和屬性。

主要Word對象有以下6個:(1)Application對象

當(dāng)用戶打開一個Word文檔,也創(chuàng)建了一個Application 對象,它表示運行的應(yīng)用程序。也可以把Application對象看成應(yīng)用程序?qū)ο蟮娜萜鳎珹pplication對象中包容了Word 的菜單欄、工具欄、Word命令等的相應(yīng)對象以及文件對象等。菜單欄對象中包容了所有的菜單及菜單命令。工具欄對象中包容了各種命令按鈕。文件對象中則包容了所有的文字、表格、圖像等文件組成部分的相應(yīng)對象。

用戶可以利用Application對象的屬性或方法來控制或返回應(yīng)用程序范圍內(nèi)的特性、控制Word窗口的外觀或調(diào)整Word對象模型的其它方面。例如Application.PrintPreview=True 將從視圖狀態(tài)切換到打印預(yù)覽狀態(tài)。

Application對象的屬性也可以訪問處于對象層次中較低級的對象,比如Windows集合(代表了當(dāng)前所有打開的窗口)和Documents集合(代表了當(dāng)前所有打開的文檔)。用戶可以通過一些屬性,從對象層次中最高一級的Application 對象向下訪問到較低級的對象(Document對象、Window對象、Selection對象等)。

(2)Document對象

陜西理工學(xué)院畢業(yè)設(shè)計 當(dāng)用戶在Word中打開或創(chuàng)建一個文件的同時,也創(chuàng)建了一個Document對象。在Word中,Document對象表示一個打開的文檔,而且所有的Document對象都是Application對象的Documents集合的成員。幾乎所有的操作都要調(diào)用Document對象本身或其內(nèi)容,用戶可以使用Document對象或Documents 集合的屬性或方法來打開、創(chuàng)建、保存、啟動或者關(guān)閉文件。

每一個Document對象都具有Characters、Words、Sentences和Paragraphs四個集合。可以使用語法Documents(index)來返回作為一個Document對象的任何打開的文檔,index是該文件的名字或索引號。但是當(dāng)用戶添加或關(guān)閉多個文檔時,某個特定文件的索引號會發(fā)生改變,所以最好使用文檔的名字來對Documents集合中的Document對象進(jìn)行索引。

要打開一個文檔,可以使用open方法;要創(chuàng)建一個新文檔,可以對Documents應(yīng)用Add方法;要保存文檔可以使用SaveAS方法或是Save方法;要關(guān)閉一個文件,可以對Document對象應(yīng)用Close方法。可以使用Add方法來向文件中添加諸如表格、備注、注腳這樣的對象。

要使一個文檔成為活動文檔,可以對Document應(yīng)用Active方法啟動它。具有焦點的文檔稱為活動文檔,由Active-Document屬性表示。使用Open方法打開的文檔,或者使用Add方法創(chuàng)建的文檔,都將成為用ActiveDocument屬性表示的當(dāng)前活動文檔。

(3)Range對象

Range對象表示文件中的一塊連續(xù)的區(qū)域。每一個Range對象都由一個起始字符位置和一個終止字符位置定義。這個連續(xù)范圍可以小到只是一個插入點,大可到整個文檔。在同一個文檔中也可以定義多個Range對象。Range對象中的字符包含非打印字符,例如空格、回車符和段落標(biāo)記。在確定Range對象后,就能夠應(yīng)用該對象的方法和屬性來修改相應(yīng)范圍內(nèi)的內(nèi)容或格式。

可以通過使用Range方法在指定文檔中創(chuàng)建一個Range對象。可以將Start和End參數(shù)設(shè)置為同一個數(shù)字,將創(chuàng)建一個不包含任何字符的Range,相當(dāng)于一個插入點。也可以通過其它對象(例如Paragraph對象、Bookmark 對象、Character對象、Word對象、Sentences對象或Selction對象)的Range屬性來返回一個Range對象。

使用Range對象的Text屬性可以返回或設(shè)置這個Range對象中的內(nèi)容或格式。

可以使用SetRange方法來設(shè)置或重新定義一個已經(jīng)存在的Range對象。也可通過使用Range對象的Start 屬性或MoveStart方法指定或重新定義Range 開始的位置,或是使用Range對象的End屬性或MoveEnd方法指定或重新定義Range結(jié)束的位置。可以使用Bookmark、Selection或Range對象的Start和End屬性來指定Range方法的Start和End參數(shù)。

(4)Selection對象

當(dāng)用戶想要自己的代碼對選定內(nèi)容做出響應(yīng)或是改變選定內(nèi)容,就可以通過Selection對象來完成任務(wù)。Selection對象可以在Application對象,Window對象,Pane對象中使用。Selection對象就像在Word對話中交互式工作時的插入點或當(dāng)前選項。所以Selection對象可以收縮為插入點,也可以包括一個或幾個字符和文件項目,甚至可以包括任何文檔部分的內(nèi)容。

用戶可以在一個選定內(nèi)容中控制操縱對象。

可以使用Selection屬性來返回Selection對象,如果隨同Application對象使用Selection屬性,則該Selection對象表示活動的選定內(nèi)容。如隨同一個Windows對象或是Pane對象使用Selection屬性,則返回一個在特定窗口或窗口窗格中Selection對象。

每個文件的每個窗口中都可以有Selection對象,但每個窗口中只能啟動一個Selection對象,在任何時刻都只能有一個活動的Selection選項。

用戶也可以通過MoveStart和MoveEnd方法,或者通過改變Selection對象的Start屬性及End 屬性的值來移動或擴展選定內(nèi)容。用戶也可以通過GoToNext方法、GoToPrevious方法或GoTo方法來移動選定內(nèi)容。在一個文件窗口或窗格中只能有一個選定內(nèi)容,因此用戶也可以通過使用Select方法選擇文檔的另一個對象來移動選定內(nèi)容。在使用Select方法

陜西理工學(xué)院畢業(yè)設(shè)計 之后,就可以使用Select屬性返回一個Select對象。

(5)Find和Replacement對象

Find對象包含與“查找”和“替換”對話框(在“編輯”菜單中)里的選項有關(guān)的屬性。可以使用Find和Replacement對象來查找并且替換文檔中文字的特定范圍。Replacement對象表示查找-替換操作的替換條件。Replacement對象的屬性和方法對應(yīng)于“查找”和“替換”對話框(在“編輯”菜單中)里的選項。

Find對象可以在Selection對象或Range對象中使用(根據(jù)Find對象是從Selection對象還是從Range對象返回的,查找操作也略有不同)。可以在Find對象中使用Replacement對象。

如果是在Selection對象中使用Find對象,那么當(dāng)找到符合選擇條件的文本后選定內(nèi)容將會改變。如果是在Range對象中使用Find對象,選定內(nèi)容不會改變,但是當(dāng)找到符合選擇條件的文本時范圍會被重新定義。

(6)Table、Column、Row、Cell對象

word對象模型包含了表格對象,也包含了表格中各種不同元素的對象。

軟件調(diào)試流程圖

下載VB實現(xiàn)窗口最小化小任務(wù)欄word格式文檔
下載VB實現(xiàn)窗口最小化小任務(wù)欄.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    VB中串口通訊的實現(xiàn)

    VB中串口通訊的實現(xiàn).txt VB中串口通訊的實現(xiàn)------------------ 一、概述 串口通訊作為一種古老而又靈活的通訊方式,被廣泛地應(yīng)用于PC間的通訊以及PC和單片機之間的通訊之......

    《VB編程實現(xiàn)文字閃爍》教案

    《VB編程實現(xiàn)文字閃爍》教案 授課課題:VB編程實現(xiàn)文字閃爍 授課時間: 授課地點: 授課班級: 授 課 人: 教學(xué)目的: 一、認(rèn)知目標(biāo) 1、理解文字閃爍程序的設(shè)計思想和設(shè)計方法 2、理解Select......

    小窗口,大舞臺

    小窗口 大舞臺 ——“優(yōu)質(zhì)服務(wù)從我做起”主題演講稿 平山鎮(zhèn)勞保所 潘娜 尊敬的領(lǐng)導(dǎo)、親愛的同仁: 大家好!我是來自平山鎮(zhèn)政務(wù)中心新農(nóng)保窗口的一名普通工作人員,很榮幸能參加......

    小窗口大效益

    小窗口大效益 為了進(jìn)一步深化教育教學(xué)改革,全面提升教育教學(xué)質(zhì)量,市教育局圍繞構(gòu)建“中小學(xué)生健康成長教育”框架這一中心,在全市中小學(xué)實施了高效的、生態(tài)化的“生命課堂”工......

    VB學(xué)習(xí)心得體會(小編整理)

    vb學(xué)習(xí)的心得體會————劉師桐這學(xué)期選修了vb這門學(xué)科,想從學(xué)習(xí)中對計算機有更深刻的認(rèn)知,也對我大學(xué)中的2級考試奠定基礎(chǔ)。那么談?wù)勥@學(xué)期的學(xué)習(xí)中對vb的認(rèn)知和心得體會。......

    VB遍歷文件目錄的實現(xiàn)方法總結(jié)

    VB遍歷文件目錄的實現(xiàn)方法總結(jié) 2009-04-25 20:44VB遍歷文件夾的實現(xiàn)方法總結(jié)一共三種,如下: 1 使用FSO對象模型 '=============================== '描述:需要Scripting類型......

    窗口工作小感

    工商窗口之工作體會夏末,暑氣漸漸消退,九月的陽光不再那么火辣。轉(zhuǎn)眼間,我到工商食品流通窗口工作已有一個月。一個月前的我,對窗口工作一無所知,一個月后的我,已漸漸適應(yīng)窗口工作......

    基于VB技術(shù)的倉庫管理系統(tǒng)的設(shè)計與實現(xiàn)

    摘要 庫存管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強.數(shù)據(jù)安全性......

主站蜘蛛池模板: 久久精品卫校国产小美女| 免费无码午夜福利片69| 国产末成年女av片一区二区| 人人澡超碰碰97碰碰碰| 在线涩涩免费观看国产精品| 黑人巨大精品欧美一区二区| 亚裔大战黑人老外av| 精品国产青草久久久久福利| 亚洲高清无码在线观看| 国产日韩av免费无码一区二区三区| 制服丝袜人妻中文字幕在线| a狠狠久久蜜臀婷色中文网| 国产精品一国产av麻豆| 久久亚洲色www成人不卡| 成人视频在线观看18| 国产成人亚洲综合无码加勒比一| 色多多www视频在线观看免费| 国产最新精品自产在线观看| 亚洲欧美成人中文日韩电影网站| 中文字幕一区二区三区精华液| 猫咪av成人永久网站在线观看| 日本精品无码一区二区三区久久久| 潮喷大喷水系列无码久久精品| 日韩成人无码毛片一区二区| 一群黑人大战亚裔女在线播放| 国产精品区一区二区三在线播放| 日本少妇裸体做爰高潮片| 成人无码av片在线观看| 亚洲午夜理论无码电影| 久久不见久久见www免费| yw尤物av无码国产在线观看| 亚洲乱码中文字幕在线| 内射极品少妇xxxxxhd| 区二区欧美性插b在线视频网站| 久久久久亚洲av无码专区体验| 中文字幕熟妇人妻在线视频| 一本一道波多野结衣av中文| av动漫无码不卡在线观看| 无码高潮爽到爆的喷水视频app| 国产99视频精品专区| 亚洲国产果果在线播放在线|