- 上一篇 二级C语言考试复习五要点 [2007-5-16 14:53:17]
| 微软MCSE2003:Security | 微软MCSE2003+MCDBA |
| 国家软考-网络工程师 | 华为认证网络工程师(HCNE) |
| Adobe平面设计师(ACCD) | Adobe网络设计师(ACCD) |
| 国家信息化网络安全工程师 | CEAC网络应用工程师 |
| CEAC微机装配与维护工程师 | 信息产业部数据恢复职业技术培训 |
| 黑客系列:黑客攻防实战 | 瑞星病毒防范技能工程师 |
问题:如何编程使文本框中文本的某一特定字符或字符串同时高亮显示?
| 以下是引用片段: 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 |
答:要利用程序实现系统的重新启动,可以在你的程序中调用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,就可以产生同步效果。
站内检索: |
|