VB语言基础重要知识点17

  • 2019 年 11 月 25 日
  • 笔记

之前我们学习过了自动打字的相关知识点,但是发现有些同学不够熟练。与此同时,对于会的同学,如果题目稍加改变以后,还是会出现不少问题。那么,我们今天就一起修改一下这个题目。

我们的目标:将文字正向逐字打印之后,随机变换一种颜色,反向逐渐减少一个字。

目标案例

以上案例,我们需要打印“我们是五月的花海”。

一、开发思路

往返打字程序思路:

1.考虑临界点

明确哪个位置开始一直增加文字,

哪个位置开始一直减少文字。

2.设置临界点标识。

3.根据临界点来实现文字的加减。

文字的加减,采用left函数来实现。

4.颜色设置

设置颜色的函数rgb

参数的值的范围:[0,255]的整数

提问:随机整数怎么写?

0<=rnd<1

0<=int(rnd*256)<=255

int函数:表示向下取整。

int(5.999) 的结果是5

int(-5.111)的结果是-6

二、end if介绍

  • if语句中何时可以省略endif
  • if语句中,如果执行的then中的语句只有
  • 一句话,那么久可以直接连写在then后面,
  • 此时不需要endif。
  • 如果then中的语句换行写,此时必须要加endif

三、类型补充

1.定义

布尔类型变量boolean

布尔类型的值只有true或者false

2.声明

声明一个布尔类型的变量a

dim a as boolean

3.赋值

为a赋值:

a=true

或者

a=false

界面设计

本节知识源代码:

Dim a As String '存储需要打印的字符串  Dim b As Integer '表示需要打几个字  Dim c As String  '临界点标识      Private Sub Form_Load()  '初始化窗体的数据  a = "我们是五月的花海"  b = 0 '初始化要打的字数  Label1.FontSize = 30 '设置字体大小    End Sub    Private Sub Timer1_Timer()  Randomize '默认以系统时间随机数种子    If b = Len(a) Then '打完所有字的临界点      c = "减"      Label1.ForeColor = RGB(Int(Rnd * 256), Int(Rnd * 256), Int(Rnd * 256))  End If    If b = 0 Then  '没有字的临界点      c = "加"      Label1.ForeColor = RGB(Int(Rnd * 256), Int(Rnd * 256), Int(Rnd * 256))  End If    '根据临界点的判断后,进行相应的字数增减  If c = "减" Then      b = b - 1      Label1.Caption = Left(a, b)    Else      b = b + 1      Label1.Caption = Left(a, b)    End If    End Sub