跳转至内容

Gambas/分支

来自维基教科书,开放世界中的开放书籍

返回 Gambas

程序中的分支是什么?

[编辑 | 编辑源代码]

分支是指程序必须做出选择的点。通过这些结构,可以创建具有多种结果的程序。主要有两种分支方法:

  • if then及其变体
  • select case

If...Then 语句

[编辑 | 编辑源代码]

if then分支的工作方式与自然语言中使用的方式非常相似。如果某些条件为真,则执行某些操作。如果条件不为真,则继续执行。

尝试以下小示例:你只需要在你的窗体上添加一个命令按钮即可运行它。输出将显示在终端窗口中。

PUBLIC SUB Button1_Click()
k AS Integer
FOR k = 1 TO 10000
 IF k = 5000 THEN PRINT "5000 has been reached !"
NEXT
END

尝试修改程序,使输出显示在文本框中。你需要在你的窗体中添加一个文本框。你可以在工具箱中使用F6找到它。然后你需要更改代码,使print命令被替换。

PUBLIC SUB Button1_Click()
k AS Integer
FOR k = 1 TO 10000
 IF k = 5000 THEN textbox1.text = "5000 has been reached !"
NEXT
END

If...Then...Else...End if

[编辑 | 编辑源代码]

你可以通过添加一些其他命令(如 else 和 end if)来修改 if-then 结构。以下是一个包含 elseend if 命令的示例。你只需要在你的窗体上添加一个命令按钮即可运行它。

 PUBLIC SUB Button1_Click()
 k AS Integer
 FOR k = 1 TO 6000
  IF k < 5000 THEN    
     PRINT k
   ELSE
     PRINT "5000 has been reached!"
   END IF
 NEXT
END

该程序从 1 计数到 6000。当计数达到 5000 时,你将在终端窗口中收到一条消息。

你必须注意正确的缩进,否则程序将无法运行。

以下是一个使用切换按钮的示例:它显示一条没有消息框的消息,并且可以将消息复制到剪贴板。你只需要一个切换按钮和一个文本区域即可运行它。你应该将文本区域的属性更改为:

  • Visible = false

当你点击按钮时,文本将显示出来。当你再次点击时,文本将消失。

PUBLIC SUB ToggleButton1_Click()
DIM Help AS String
 IF TextArea1.Visible = FALSE THEN 
   ToggleButton1.Text = "Close Info "
   Help = "Hello, this is a info" & Chr(13) & Chr(10)
   Help = Help & "www.madeveryeasy.de" & Chr(13) & Chr(10)
   Help = Help & "[email protected]"
   TextArea1.Visible = TRUE
   TextArea1.text = Help
 ELSE 
  TextArea1.Visible = FALSE
   ToggleButton1.Text = "Show Info"
 ENDIF
END

Select Case

[编辑 | 编辑源代码]

如果你想要分支并且你有多于2个可能的答案,那么你可以使用select-case命令。尝试以下小示例来熟悉它。你只需要一个空白窗体即可运行它。输出将在终端窗口中显示。

PUBLIC SUB Form_Open()
 PRINT Now
 PRINT WeekDay(Now)
  SELECT CASE WeekDay(Now) 
   CASE 1 
     PRINT "Monday" 
   CASE 2 
     PRINT "Tuesday"
   CASE 3 
     PRINT "Wednesday" 
   CASE 4 
     PRINT "Thursday" 
   CASE 5 
     PRINT "Friday" 
   CASE 6 
     PRINT "Saturday" 
   CASE 7 
     PRINT "Sunday" 
 END SELECT 
END
华夏公益教科书