⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 16.txt

📁 VB文章集(含API、窗口、数据库、多媒体、系统、文件、等等)
💻 TXT
字号:
VB编程常见问题  

  问题:如何编程使文本框中文本的某一特定字符或字符串同时高亮显示? 

  答:由于普通TextBox控件不支持不连续字符串的同时高亮显示,所以我们选择RichTextBox控件。单击工程(Project)选单项,在弹出的下拉选单中单击组件(Components)选单项,从弹出的对话框中选择Microsoft Rich Textbox Control 5.0复选框,确定加载RichTextBox控件。 

  新建(New)一个工程,在窗体(Form)上添加一个RichTextBox控件和两个Command(按钮)控件,都采用系统默认的Name属性值;设置RichTextBox的Text属性值为空,Command1和Command2的Caption属性值分别设为“输入文本”和“选择字符串”。最后,添加如下VB代码: 

  Private Sub Command1—Click() 

   Dim str As String 

   Dim Text As String 

   str=″输入文本″ 

   Text=InputBox(str) 

   RichTextBox1.Text=Text 

  End Sub 

  Private Sub Command2—Click() 

  Dim str As String 

  Dim Text As String 

  Dim Position As Integer 

  Dim Lenth As Integer 

  str=″输入要高亮显示的字符串″ 

  Text=InputBox(str) 

  If Text 〈〉 ″″ Then 

   Position=InStr(RichTextBox1.Text, Text)-1 

   Lenth=Len(Text) 

   RichTextBox1.SelStart=Position 

   RichTextBox1.SelLength=Lenth 

   RichTextBox1.SelColor=RGB(255,0,0) 

   Do While InStr(Position+Lenth+1, RichTextBox1.Text, Text) 〈〉 0 

     Position=InStr(Position+Lenth+1, RichTextBox1.Text, Text)-1 

     RichTextBox1.SelStart=Position 

     RichTextBox1.SelLength=Lenth 

     RichTextBox1.SelColor=RGB(255,0,0) 

   Loop 

  End If 

  End Sub 

  按F5执行程序,单击“输入文本”按钮,在弹出的对话框中输入一些文本,确定后,刚刚输入的文本将显示在RichTextBox中;再单击“选择字符串”按钮,在弹出的对话框中输入你希望高亮显示的字符串,确定后,RichTextBox中相应的字符串将以红色高亮显示。 

  问题:如何利用VB编写程序实现Windows 95操作系统的热启动? 

  答:要利用程序实现系统的重新启动,可以在你的程序中调用API函数来实现。建一个子函数:(以VB为例) 

  Declare Function SystemParametersInfo Lib ″user32″ Alias — 

  ″SystemParametersInfo″ (ByVal uAction As Long, ByVal uParam As Long, 

  ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long 

  Sub DisableCtrlAltDelete(bDisabled As Boolean) 

  Dim X As Long 

  X=SystemParametersInfo(97, bDisabled, CStr(1), 0) 

  End Sub 

  Call DisableCtrlAltDelete(true)  ′禁止热启 

  Call DisableCtrlAltDelete(false) ′允许热启 

  问题:如何把数据文件输出到Text控件中?如果数据量比较大,窗体满屏也不够大,怎么解决? 

  答:有一个比较简单的方法,就是把数据放到一个文本框(Text)里,并在其中加上水平和垂直滚动条。具体实现步骤为:先在窗体(Form)里加入一个文本框,采用默认名Text1;然后,设置文本框Text1的属性:Text属性设置为空,MultiLine属性设置为True,ScrollBars属性设置为3-Both;接着添加如下VB代码: 

  Private Sub Form—Load() 

  Dim Handle As Integer 

  Dim FileName As String 

  On Error GoTo ErrExit 

  begin: 

  ′输入要显示的数据文件的名称 

  FileName=InputBox$(″Input Filename″, 

  ″Open File″) 

  On Error GoTo FileErr 

  Handle=FreeFile 

  Open FileName For Input As #Handle 

  ′把数据文件中的数据输出到文本框中 

  Text1.Text=Input$(LOF(Handle), Handle) 

  Close #Handle 

  Exit Sub 

  FileErr: 

  Dim ErrNum As Integer 

  If Err.Number=53 Then 

    ErrNum=MsgBox(″File not exist″, vbOKCancel, ″Error Information″) 

    If ErrNum=1 Then 

      GoTo begin 

    Else 

      Exit Sub 

    End If 

  End If 

  MsgBox Err.Description, , ″file open failed″ 

  ErrExit: 

  Exit Sub 

  End Sub 

  ′使文本框充满整个窗体 

  Private Sub Form—Resize() 

  Text1.Left=0 

  Text1.Top=0 

  Text1.Width=Form1.Width-100 

  Text1.Height=Form1.Height-400 

  End Sub 

  通过这样的处理,不仅能解决问题,而且用户还可以在文本框中对数据进行编辑。 

  问题:怎样把文件列表框、目录列表框和驱动器列表框相互关联起来? 

  想做一个对话窗体,包含驱动器列表框、目录列表框和文件列表框,并能实现三者的同步操作,怎么做? 

  答:在实际应用中,经常会遇到上述问题,在VB中解决这个问题非常简单,可以通过Path属性的改变引发Change事件来实现。例如: 

  Sub Dir1—Change() 

File1.Path=Dir1.Path 

  End Sub 

  该事件过程使窗体上的目录列表框Dir1和文件列表框File1产生同步。因为目录列表框Path属性的改变将产生Change事件,所以在Dir1—Change事件过程中,把Dir1.Path赋给File1.Path,就可以产生同步效果。 

  类似地,增加下面的事件过程,就可以使三种列表框同步操作: 

  Sub Drive1—Change() 

Dir1.Path=Drive1.Drive 

  End Sub 

  该过程使驱动器列表框和目录列表框同步,前面的过程使目录列表框和文件列表框同步,从而使三种列表框同步,问题即可解决。 

  问题:如何在Windows 95或Windows 98启动后自动启动程序? 

  答:我们都知道在Windows 95和Windows 98的“开始”→“程序”选单下有一“启动”选单项,当每次启动Windows 95或Windows 98时,系统都会自动启动放在“启动”选单栏里的可执行程序。 

  但目前有好多软件,像解霸五、ICQ,以及大部分实时侦测病毒的软件等等,安装后,并没有放在“启动”选单里,也能在启动操作系统时自动启动。怎么实现的呢? 

  其实只要知道Windows注册表的一些知识,这个问题就不能称之为问题了。用鼠标单击“开始”,打开开始选单,再单击“运行”,出现一对话框,然后输入“regedit”,确定后,会打开系统注册表编辑器,找到HKEY—LOCAL—MACHINE? SOFTWARE?Microsoft?Windows?CurrentVersion?Run,加入你的程序的入口,就可以了。如果不知道怎么加,就参考一下已经存在的键值。  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -