教程 · Chapter 2

第一个项目 — 通过按钮点击打印日志

创建一个新项目,完成最简单的示例:在画面上放置一个按钮,按下该按钮时用 for 循环打印 10 次日志。按照这一流程操作,便能一次性掌握 QMachineStudio 的核心开发流程 —— 布置画面 → 将事件连接到函数 → 在函数中编写代码 → 运行 → 查看日志

QMachineStudio 并非直接编辑文本文件,而是在 Solution Explorer 树中添加函数和步骤,并只编辑所选条目的代码。如果对这一概念感到陌生,请先阅读快速开始中的"开发方式"一节。

1. 创建项目

  1. File → New 创建新项目。名称设为 FirstProject
  2. 创建完成后,Solution Explorer 中会同时生成承载画面的 View 模块和承载动作的 Run 模块。本示例仅使用画面(View)模块。

2. 在画面上添加按钮

  1. Solution Explorer 中双击 View 模块的画面条目,打开设计器(View Module)。
  2. 从控件面板中将 Button 拖放到画面上。可用的控件种类可在 UI 控件参考中查看。
  3. 选中按钮,指定显示文本(例如 Run Log)和名称(例如 btnRunLog)。

3. 将按钮 Click 连接到函数

按钮被按下时要执行的动作以函数编写,并将该函数连接到按钮的点击事件。在 QMachineStudio 中,按钮点击要调用函数,按钮的 Action 属性必须为 RunEvent

  1. 在选中按钮的状态下,于右侧 Property Editor 中将 Action 属性设置为 RunEventAction 的默认值为 None仅当为 RunEvent,点击才会执行 OnClickEvent 函数。若保留为 ShowPage · RunManual 等其他值,点击会按该动作处理,OnClickEvent 不会被调用。
  2. ActionRunEvent 的状态下双击按钮。如果 XMachineEvent 项中 OnClickEvent 指定的函数尚不存在,则自动创建函数并打开其编辑选项卡。(若要自行命名函数,请先在 OnClickEvent 属性中输入名称(例如 OnRunLogClick),再双击。)
  3. 这样创建的函数会作为节点添加到 Solution Explorer 中相应 View 模块的 Functions 之下。之后可右键单击节点进行 Rename · Delete

事件函数在被调用时会自动接收按钮名称和标签等(string sender, int tag, array params)。本示例不使用参数。

4. 用 for 循环编写日志

在打开的函数编辑选项卡中编写以下代码。声明变量 i,用 for 从 1 重复到 10,每次留下一行日志。

xscript
int i;
 
for(i, 1, 10)
{
    Log("count = {0}", i);
}
  • for(变量, 起始, 结束)范围型循环包含结束值。上述代码使 i 从 1 到 10 共重复 10 次。
  • Log("...{0}...", 值) 输出日志,后面的值会填入 {0} 位置。此处会输出从 count = 1count = 10 共 10 行。

5. 构建与运行

  1. Build → Save All & MakeF6)保存后构建。确认底部 Output 面板中没有错误。(结果面板请参阅 Output · Error · Search
  2. Build → RunF5)启动运行时。所编写的画面会运行。
  3. 按下画面上的 Run Log 按钮。

6. 用 Log Manager 查看日志

按下按钮后,Log("count = {0}", i) 会执行并留下 10 行日志。这些运行时日志通过配套工具 ICT Log Manager 查看。

  1. 运行 Log Manager 并开始实时接收,或打开已保存的日志文件。(详细方法请参阅 Log Manager 概述实时日志 · 打开文件
  2. 如果在日志列表中按顺序看到从 count = 1count = 10 的 10 行,即为成功。
  3. 行数较多时,可用 Log Manager 的查找 · 过滤搜索 count 来快速确认。

学到了什么

  • 在画面(View)上放置控件,并通过将按钮 Action 设为 RunEvent 将其点击事件(OnClickEvent连接到函数的方法
  • 将函数作为节点添加到树中并只编辑该节点代码的 QMachineStudio 开发方式
  • 范围型 for(i, 1, 10) 循环与 Log("...{0}...", 值) 输出
  • Log Manager 查看运行时日志的方法

后续步骤