十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
第一个相当于 aa 就是Object的方法返回的那个实例。
创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的建湖网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
第二个是实例化一个Object2类。
有些类的一些方法会返回一个结构或者什么类。那么可以用第一种方法,将 aa 做为对这个返回实例的引用。
第二种方法,是通过调用类或结构的初始化函数Sub New来实例化的。
哎,表达能力有限,也不晓得你明白了没。
我大体看了一下
Dim a(), b(), c(), d() As String
这一行的几个数组只进行了声明而没有初始化。
你要注意一个问题,如果你要用一个数组,首先要指定它的初始大小,比如
Dim s(10) As String
这样子,这个数组才能进行使用。
如果一开始没有指定大小,比如这样:
Dim s() As String
这个数组是不能使用的,因为没有初始化。
要使用它,有两种方法,一种是 ReDim
Dim s() As String
ReDim s(10)
或者,用New关键字初始化数组对象
Dim s() As String
s = New String(10) {}
注意,后面的大括号是必需的,否则编译器会认为你在调用String类的构造函数
如果你像下面这样初始化:
s= New String() {}
将等价于
s = New String(0){}
这个数组只有0个元素,你要是想用它还得ReDim
这个可能是你使用了初始值为NULL的字符串变量引起的吧?别忙处理字符串,你先查查Module1.myrow.Item(4)到底在SQL查询之后有没有成功得到非NULL值,如果为null,肯定会出现这个错误的,报错那行设个断点看看当时各项值是否符合计算要求再说
希望对你能有所帮助。
使用 RichTextBox 控件
RichTextBox 控件可用于输入和编辑文本,它同时提供了比常规的 TextBox 控件更高级的格式特性。
RichTextBox 控件提供了一些属性,通过这些属性,可对该控件中任何部分的文本使用不同的格式。用这些属性,可以将文本变为粗体或斜体,改变文本的颜色,创建上标或下标。可以调整段落的左右缩进值,还可以使用悬挂式缩进。
用途
作为“无底”的文本框,可用于编写阅读特别大的文本文件的应用程序。
在任何应用程序中实现功能完备的文本编辑器。
特性
以 RTF 格式或 ASCII 文本格式打开或保存文件。可以使用该控件的方法(LoadFile 和 SaveFile),直接读写文件。也可以用该控件的属性,比如 SelRTF 和 TextRTF,联合 Visual Basic 的文件输入输出语句读写文件。
将 .rtf 文件的内容装入 RichTextBox 控件,只需将该文件(比如从 Windows 95 “资源管理器”中)的内容直接拖入该控件,或者将其它应用程序(比如 Microsoft Word)中使用文件的突出显示部分直接拖入该控件。
设置 FileName 属性,将 .rtf 或 .txt 文件的内容装入该控件。
用 SelPrint 方法打印 RichTextBox 控件中的全部或部分文本。
将 RichTextBox 控件绑定到 Data 控件,可以处理 Microsoft Access 数据库的 Memo 字段,或者其它数据库中大型的文本字段(比如 SQL 服务器中的 TEXT 数据类型)。
在运行时,用 OLEObject 集合的 Add 方法,将嵌入对象,比如位图、图标、应用程序图标,加到该控件中。在设计时或运行时,可以拖放任何嵌入对象到控件中,包括文档,比如 Microsoft Excel 的电子表格和 Microsoft Word 文档等。
在设计时设置滚动条
按照缺省规定,RichTextBox 没有滚动条。在运行时,如果在该控件中装入了较大的文件,最终用户就不能看到文件的全部内容了。为使用户能够方便地进行滚动,可将其 ScrollBars 属性设置为 1(水平的)、2(竖直的)或 3(两个都有)。这必须在设计时完成,因为 ScrollBars 属性在运行时是只读的。
用 LoadFile 和 SaveFile 方法打开和保存文件
用 LoadFile 和 SaveFile 方法可以方便地为 RichTextBox 控件打开或保存 RTF 文件。要打开文件,可用 CommonDialog 控件提供路径名,如下所示:
Private Sub OpenFile()
'RichTextBox 控件的名称是“rtfData”。
'CommonDialog 名为“dlgOpenFile”。
'为文件名声明 String 变量。
'显示 “打开文件”对话框,
'并将变量设置为文件名。
Dim strOpen As String
dlgOpenFile.ShowOpen
strOpen = dlgOpenFile.FileName
'用 LoadFile 方法打开该文件。
rtfData.LoadFile strOpen
End Sub
用 SaveFile 方法,保存文件也同样简便:
Private Sub SaveFile()
Dim strNewFile As String
dlgOpenFile.ShowSave
strNewFile = dlgOpenFile.FileName
rtfData.SaveFile strNewFile
End Sub
注意 如果文件中包含了该控件不能支持的 RTF 编码,仅相关的文本在 RichTextBox 控件中将不会出现。
用 SelFontName、SelFontSize 和 SelFontColor 设置字体属性
要改变 RichTextBox 控件中的字体特性,可以使用 SelFontName、SelFontSize 和 SelFontColor 属性。
通常使用 ComboBox 控件显示这些属性的选项。随后可用 ComboBox 控件的 Click 事件改变属性。下面的代码首先在 Form 对象的 Load 事件中,充填名为“cmbFonts”的 ComboBox 控件。然后用 Click 事件改变 RichTextBox 控件的 SelFontName 属性。
Private Sub Form_Load()
Dim i As Integer
With cmbFonts
For i = 0 to Screen.Fonts.Count - 1
.AddItem Screen.Fonts(i).Text
End With
End Sub
Private Sub cmbFonts_Click()
rtfData.SelFontName = cmbFonts.Text
End Sub
重点 这些属性只影响选中的文本,或者,如果没有选中文本,则影响当前光标位置之后键入的文本。
格式化段落的缩进、悬挂式缩进和项目符号
RichTextBox 控件的另一个特性是它可以创建有缩进、悬挂式缩进和项目符号的段落。这三种样式显示如下:
缩进和带项目符号的缩进 (rtf_3ind.bmp)
要使用 SelFontName、SelFontSize 和 SelFontColor 属性,最终用户必须选中一个或多个段落。在这里,假设用户只选中了第二段,创建缩进和悬挂式缩进的代码如下所示:
'假设该控件的名称是“rtfData”。
rtfData.SelIndent = .5
rtfdata.SelHangingIndent = 1.5
请注意用于设置 SelIndent、SelHangingIndent、BulletIndent 和其它属性的值,要依赖于 RichTextBox 控件的容器的 ScaleMode 属性。例如,如果 RichTextBox 控件的容器是 Form 对象,则将该 Form 对象的 ScaleMode 属性由 7(厘米)改为 1(缇)时,SelIndent 属性必须同时由 0.5(厘米)改为 283(缇)。这是因为一厘米 = 567 缇。
同时还要注意段落的 SelBullet 属性必须设置为 True,才能将该段设置为有项目符号的样式。
用 SelChange 事件通知属性的变化
要通告用户选中的任何文本的当前属性,可以使用 SelChange 事件。每当插入点改变,或者选中内容被改变时,均会产生该事件。下面的示例用 Toolbar 控件通告用户 SelBold 属性的变化。
Private Sub rtfData_SelChange()
'重新设置 Toolbar 的 Button 对象的
' Value 属性。该 Toolbar 控件的名称是
'“tlbRTF”。
'SelBold 返回 0、-1 或 Null。如果它为 Null
'则将其 Mi xedState 属性设置为 True。
Select Case rtfData.SelBold
Case 0 '不是粗体。
tlbRTF.Buttons("bold").Value = tbrUnpressed
Case -1 '粗体。
tlbRTF.Buttons("bold").Value = tbrPressed
Case Else '混合状态。
tlbRTF.Buttons("bold").Mi xedState = True
End Select
End Sub
用 SelPrint 方法打印 RichTextBox 的内容
要打印 RichTextBox 控件,可以使用 SelPrint 方法。该方法需要一个参数,即用来打印 RichTextBox 控件内容的 Printer 对象的 hDC 属性。如果用户选中了某些文本,则只打印选中的文本。如果没有选中任何文本,则打印该控件的所有内容。
下面的代码,在用户单击 CommandButton 控件后,用 CommonDialog 控件显示“打印机”对话框。Flags 属性禁用了页码,并使用户能够在该对话框中选择多种选项:
Private Sub cmdPrint_Click()
'CommonDialog 控件的名称是“dlgPrint”。
dlgPrint.Flags = cdlPDReturnDC + cdlPDNoPageNums
If rtfData.SelLength = 0 Then
dlgPrint.Flags = dlgPrint.Flags + cdlPDAllPages
Else
dlgPrint.Flags = dlgPrint.Flags + cdlPDSelection
End If
dlgPrint.ShowPrinter
rtfData.SelPrint dlgPrint.hDC
End Sub
详细信息 有关使用 CommonDialog 控件的详细说明,请参阅《Visual Basic程序员指南》中的“使用 CommonDialog 控件”。
在控件中显示嵌入对象
在运行时,最终用户可拖动任何嵌入对象,并放入 RichTextBox 控件。在控件中可以嵌入两种对象:以图标形式显示的对象,和以数据形式显示的对象。下图显示了具有嵌入文件对象的 RichTextBox,作为第一种类型的示例。
单击后,嵌入的对象就会象预料的那样,即启动与该文件相关联的应用程序。当控件中的数据以 RTF 文件形式保存时(用 SaveFile 方法),嵌入对象中的信息也将被保存。
然而,如果最终用户在该控件中嵌入位图,则将显示该位图,而不是它的图标,如下所示:
单击该位图将启动 Paint 应用程序,使最终用户能够编辑该位图。
用 OLEObjects 集合的 Add 方法添加嵌入对象
用 OLEObject 集合的 Add 方法可将嵌入对象以编程方式加入该控件,如下所示:
Private Sub cmdAddObject_Click()
'将蝴蝶位图添加到该控件中。
RichTextBox1.OLEObjects.Add , , , "bfly.bmp"
End Sub
在运行时,可用 Add、Clear 和 Remove 方法,动态地向该控件中充填嵌入对象。