七、功能性组件与事件逻辑(IVX 快速开发教程)

七、功能性组件与事件逻辑

由于 iVX 极度易用的特性,在 iVX 中开发微信小程序、WebApp、小游戏应用的开发流程大致相同。介绍完基础可视化组件后通过后台的服务、数据库与事件结合即可完成一个应用的开发;此篇将会介绍 iVX 功能性组件与事件,包括微信小程序、小游戏事件。

文章目录

  • 七、功能性组件与事件逻辑
      • 7.1 变量组件
        • 7.1.1 文本变量与数据绑定
        • 7.1.2 数值变量与布尔变量
        • 7.1.3 一维数组
        • 7.1.4 循环组件
        • 7.1.5 二维数组与嵌套循环
        • 7.1.6 对象变量
        • 7.1.7 对象数组
      • 7.2 事件逻辑
        • 7.2.1 文件接口与按钮
        • 7.2.2 通过按钮点击更改文本内容
        • 7.2.3 页面跳转
      • 7.3 小游戏
        • 7.3.1 圆形
        • 7.3.2 矩形
        • 7.3.3 绘制多边形
        • 7.3.4 触发器
        • 7.3.5 物理世界

7.1 变量组件

变量组件 在 iVX 中我们可以当做是一个存储数据的容器,该容器可以存储不同类型的数据,在 iVX 中如下几个变量组件:

  • 文本变量
  • 数值变量
  • 布尔变量
  • 通用变量
  • 一维数组
  • 二位数组
  • 对象变量
  • 对象数组
  • 时间变量

在此小节中我们介绍几个常用的变量 文本变量 、数值变量 、布尔变量、一维数组 、 二位数组、对象变量、对象数组。

7.1.1 文本变量与数据绑定

文本变量 是一种存储文本数据类型的容器,例如 “你好吗?”、“今天吃饭了吗?”、“hello iVX” 这些都是文本内容,我们可以将这些内容存储到文本变量之中。

我们先在前台中新增一个 文本变量:

增加完 文本变量 后,为了演示数据绑定,在此新建一个 文本框组件。


在 iVX 中 数据绑定 指某一组件的属性不指定固定的值,使用其它组件属性、变量值或公式等进行设定;完成该设定后,当前组件的值将会永远与绑定的值相等。

每个数据的右侧有一个数据绑定的按钮:

点击该 按钮 后将会出现一个箭头,通过该箭头可以在对象树中选择需要绑定数据的组件:


也可以在 下拉选项 中选择需要绑定数据的内容:

在此我们为当前文本的内容属性绑定为变量的值,操作流程如下:

绑定后此时我们点击该变量,修改变量的内容为 “你好 iVX”:


之后预览内容,将会发现当前界面显示的内容为 “你好 iVX”:

7.1.2 数值变量与布尔变量

数值变量 指该变量存储类型为数字,例如 1、2、3、4、5、6、99、999、3.14 等数据都属于数字类型,该类型不能存储字符类型数据,否则该变量的数值将自动归零:


布尔变量 则是存储 “真” 与 “假” 类型的变量,不需要具体输入值,只需要打开真假开关即可。布尔变量打开开关则是为真,关闭开关则是为假,一般用于某些状态的设定,演示如下:

7.1.3 一维数组

在此小节之上,我们学习的变量都只能存储一个值,在 iVX 中拥有存储多个值的变量类型,如 一维数组。一维数组 可以在变量中设置多个值,这个 一维数组变量 可以看做是一个数据集合,这个数据集合可以存储不同类型的数据:

以上为一个数组的示例,其中黄色区域为数组的数据,红色区域表示对应黄色区域数据对应的位置,例如 一维数组 中第 “0” 个数据是 “你好”、第 “1” 个数据是 “1” 以此类推;我们可以发现,一维数组中对数据的 “表示” 是从 0 开始的,而非是 1,这点是我们需要注意的。上图中绿色部分是一个加号,该加号表示点击后增加一个所选择类型的数据:

该变量的创建及添加值方式如下:

7.1.4 循环组件

在 iVX 中 循环组件 可以对组件循环生成,若同一个组件拥有重复内容,但只是部分属性不一致,并且要求使用多个,这时使用 循环组件 是一个很好的选择。

首先修改 一维数组 的内容如下:

接着我们点击 循环组件 添加到页面中,并且添加一个 文本组件 位于 循环组件 之下(组件可以拖拽到某个组件之下作为子对象):


接下来我们需要重复显示 一维数组 的内容显示到 文本组件 中,点击 循环组件 将数据来源绑定为 一维数组 值:

此时我们在 文本组件 中将内容绑定为当前数据:


循环组件 可以对数据来源的数组进行值的自动获取,循环组件 将会获取数组中的每一个值,第 1 次自动循环将会获取第 0 个值、第 2 次循环将会获取数组中的第 2 个值,以此类推;其中 当前数据 指的是此次循环获取到数组中的值,由于 循环组件 对 文本组件 进行了循环,就意味着对该 文本组件 进行了重复生成并且赋予了新的文本属性,那么此时将会使用 文本组件 显示出所有数据中值的内容:

7.1.5 二维数组与嵌套循环

数组除了 一维数组 外还有 二维数组。一维数组 我们可以当做是一种相同属性的内容,在之前我们在 一维数组 中存储的值是名字文本的集合,那么如何在一个数组中就存储名字、性别、年龄等信息呢?这个时候就需要使用 二维数组 完成这个需求,二维数组 的数组结构更像是一个 Excel 表格,以下展示一个二维数组 内容:


在以上 二维数组 演示中,从列来看名字这一列的内容存储的是名字信息、性别这一列内容存储的是性别信息、年龄这一列内容存储的是年龄信息,若横排来看则是第 0 行则是小明的性别和年龄信息、第 1 行是小红的性别和年龄信息;横排数据完成了一个人物的信息所有信息,以下演示如何创建一个 二维数组 并且创建一个值:

此时已经创建了一个 二维数组,如何显示这个 二维数组 的值呢?这时需要使用完成循环嵌套对数据进行值的获取。在使用 循环组件 对数据进行取值时,第 1 次所取到的值为当前 二维数组 的第 0 行值,也就是如下图示所框选的内容:


此时我们可以当做第 0 行为一个 一维数组,那么这时需要获取这一行的内容那么则需要再加一个 循环组件 进行获取,也就是如下的 对象树 的示例:

此时为第 1 个循环创建组件 “循环创建1” 绑定来源数据为 二维数组,当 “循环创建1” 组件获取到第 0 行数据时,再将这第 0 行数据绑定给 “循环创建2” 组件进行循环。此时在 “循环创建2” 组件中添加一个 文本组件 作为该组件的子对象:

将该 文本组件 的内容绑定为 “当前数据2” 即可完成数据的显示,“当前数据2” 指的是第2个 循环组件 所获取的内容。完整操作流程如下演示:

7.1.6 对象变量

在学习 一维数组 时,我们在这个数组中添加了多个内容,若这些内容较为杂乱,并不是统一的一个属性值,那么我们此时将不知道该值的作用是什么,此时我们可以使用 对象变量 解决这个问题。

对象变量 与 一维数组 不同,对象变量 允许给值添加 一个标识,例如如下演示:

以下是创建一个 对象变量 的步骤:

用 对象变量 对 文本组件 进行数据绑定,我们可以很方便的根据我们想要的数据进行值的显示:

操作流程如下:

7.1.7 对象数组

对象数组 内有多个对象变量,与 二维数组 最大的不同则是可以使用标识确定自己想要显示的内容,一个 对象数组 示例如下:

创建 对象数组 的流程如下:

对象数组 可以使用 循环组件 进行值的显示:

但此时使用 循环组件 可以很方便的显示所需的数据,在 文本组件 中选择数据为 “当前数据1” 后,将会显示一个具体属性值进行选择:

操作流程如下:

7.2 事件逻辑

事件逻辑是整个项目的核心,若没有事件逻辑这个项目则是一个静态界面,没有任何的 “功能”。·我们可以将界面当做一个电饭锅的外壳,则事件逻辑是其内部的功能。电饭锅的外观有一个按钮,若没有功能按下了则不会运行任何行为,只有添加了按下按钮后要处理的事件逻辑,才可以给这个电饭锅赋予对应的功能。

7.2.1 文件接口与按钮

文件接口组件 是一个获取本地文件的功能性组件,我们可以通过 文件接口组件 获取文件的路径、宽、高等信息,但该组件需要一个事件进行触发,在此我们对 按钮组件 添加点击后的事件,对 文件接口组件 进行操作。

文件接口组件 位于组件栏的上部:

我们此时为该页面添加 按钮组件 与 文件接口组件 后的对象树如下:

接着我们为 按钮组件 添加事件。为某组件添加事件只需要点击该组件后,点击 对象树 右侧的事件 按钮组件 即可:

操作流程如下:


该组件添加事件后,将会在组件右侧出现一个事件图标,点击该图标可以跳转到事件的编辑窗口:


此时我们点击 件编辑框 中触发事件下拉选项可以看到多个触发事件,选择对应的 触发事件 即可对某个对象进行某个操作(动作):

在 iVX 中事件触发块显示颜色为蓝色,而动作块显示颜色为深绿色:

此时我们选择 触发事件 为“点击”:


接着选择操作的对象为 文件接口组件:


最后一步只需要对这个 文件接口组件 设置一个所需要的动作即可。在这里我们的需求是获取本地图片,只需要在选择动作中设置对应操作即可:

设置完毕后,将会出现一个回调事件:

回调 指的是读取本地图片后你需要继续做什么事情,若在 回调 中选择成功则是指成功读取到图片后需要做什么,也可以选择其他的读取状态:

在这里我们需要显示所选择的图片,显示图片需要一个 图片组件,在页面中创建一个 图片组件,但并不选择图片内容:

随后在 回调 中使用 图片组件 进行设置图片地址操作:

最后在地址中设置值为读取结果的 base64 图片即可完成图片的显示:

操作步骤及演示如下:

7.2.2 通过按钮点击更改文本内容

总体来说事件的操作只需要根据给予的 触发条件 对某个组件进行所设定范围内的操作即可,以下通过一个示例加强对事件的理解,具体其他操作将在之后的实战训练中再熟练事件的操作即可。

以下演示通过点击 按钮组件,将一个 文本组件 的值替换成另一个 文本组件 内容。首先将必要的组件添加至页面之中,对象树如下:

此处设置目标文本的文本内容为 “iVX”,之后我们为“按钮1” 新增事件。选择 “按钮1” 后点击右侧的事件选项即可添加事件,在事件中我们将 “按钮1” 的 触发事件 设置为点击:

所需要操作的对象为 “待替换文本”,动作为设置属性:


随后设置内容为目标文本内容:


操作流程如下:

7.2.3 页面跳转

在 iVX 中使用前台进行页面的跳转,现在创建 2 个页面如下:

一个页面为红色一个页面为蓝色,在页面1中添加一个按钮,点击按钮将会跳转到页面2:


操作流程如下:

7.3 小游戏

在 iVX 中小游戏拥有的特殊组件不多,常用组件有以下几个:

  • 圆形组件
  • 矩形组件
  • 多边形组件
  • 物理世界组件
  • 触发器组件
  • 对象组组件

7.3.1 圆形

在小游戏中使用 圆形组件 可以绘制一个椭圆,操作流程如下:

7.3.2 矩形

在小游戏中使用 矩形组件 可以绘制一个矩形,操作流程如下:

7.3.3 绘制多边形

在小游戏中使用 多边形组件 可以绘制一个多边形,操作流程如下:

7.3.4 触发器

触发器组件 在小游戏中时比较重要的组件,通过 触发器组件 可以自动创建角色,方便操作。

我们选择前台,点击 触发器组件 添加到前台:


随后在 触发器组件 的属性中选择触发时间间隔与开启自动播放。自动播放若你需要自动启动,一定要开启,否则 触发器组件 将无法自动生效:


触发器组件 具体使用方法我们将在实战中进行讲解。

7.3.5 物理世界

物理世界组件 可以模拟现实世界中的物理规则,我们在页面中添加一个物理世界并在物理世界下添加 矩形组件:

操作流程如下:

此时添加的 矩形组件 还未能有物理属性,我们需要点击 矩形组件,在左侧组件栏中点击添加一个 物体组件,让该组件属于物体:


操作流程如下:

最后我们通过浏览器预览内容,将会发现该矩形自动掉落:

那如何让该 矩形组件 反方向进行运动呢?这个时候在该 矩形组件 中再添加一个 运动组件:

随后点击 运动组件,设置 运动组件 的运动反向为垂直 90° 向上,并且运动速度为负数即可反方向运动,但是在此一定要注意要开启自动播放,否则该运动效果将不会生效:

操作流程如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/286780.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF 基础控件之 ToggleButton 样式

其他基础控件1.Window2.Button3.CheckBox4.ComboBox5.DataGrid 6.DatePicker7.Expander8.GroupBox9.ListBox10.ListView11.Menu12.PasswordBox13.TextBox14.RadioButtonToggleButton 实现下面的效果1)ToggleButton来实现动画;Border嵌套 Ellipse并设置T…

反射调用 java bean的set和get方法

v一、使用java.beans.PropertyDescriptor import java.beans.IntrospectionException; import java.beans.PropertyDescriptor; import java.lang.reflect.Field; import java.lang.reflect.Method;public class PropertyUtil {private static final String SET_PREFIX "…

八、后台与数据库(IVX 快速开发教程)

八、后台与数据库 在 iVX 中 数据库 作为数据存储仓库,通过 数据库 可以永久性存储存储数据,而 后台服务 起到数据传输作用,将 数据库 的数据传输到前台页面之中,页面再使用这些数据。 文章目录八、后台与数据库8.1.1 数据库添加…

Android Studio开发环境搭建准备

Android Studio 是一个Android开发环境,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。 Android Studio开发环境搭建前,我们需要进行安装前的准备工作,本篇以在Windows 7平台…

九、二手信息站点后台完成 (IVX 快速开发教程)

九、二手信息站点后台完成 了解完后台实现后,我们开始为该二手商品站点完成完成后台制作。 文章目录九、二手信息站点后台完成9.1.1 完成二手信息站点注册功能9.1.2 完成二手信息站点登录功能9.1.3 完成商品发布功能9.1.4 首页信息获取9.1.5 详情页内容9.1.1 完成二…

爬虫是什么?起什么作用?

【爬虫】 如果把互联网比作一张大的蜘蛛网,数据便是放于蜘蛛网的各个节点,而爬虫就是一只小蜘蛛,沿着网络抓取自己得猎物(数据)。这种解释可能更容易理解,官网的,就是下面这个。 爬虫是一种自动…

oneproxy检测主从复制同步延迟

Q:为什么要实现读写分离延迟检测? A:就好比你在ATM机存钱,你老婆收到短信后乐呵呵的拿网银APP查看,结果钱没过来。其实钱已经到账了,只是查询的ATM机节点钱还没过来。所以我们dba要监控数据,一旦发现钱没有复制到另一A…

.NET 分表分库动态化处理

介绍本期主角:ShardingCore 一款ef-core下高性能、轻量级针对分表分库读写分离的解决方案,具有零依赖、零学习成本、零业务代码入侵我不是efcore怎么办这边肯定有小伙伴要问有没有不是efcore的,我这边很确信的和你讲有并且适应所有的ADO.NET包括sqlhelperShardingCo…

addEventListener 的事件函数的传递【转载】

addEventListener 参数如下: addEventListener(type, listener[, useCapture]); type,事件名称listener,事件处理器useCapture,是否捕获一直把 listener 记成是响应函数,function 类型。相信很多人也是这么理解的。多数…

Android之elevation实现阴影效果

1 需求 需要控件实现阴影效果 2 实现 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"andr…

十、小程序实战 (IVX 快速开发教程)

十、小程序实战 使用小程序完成一个二手信息站点与 WebApp 实现流程类型&#xff0c;只是部分内容使用了微信小程序特有的组件&#xff0c;例如微信登录与 WebApp 略有差别&#xff0c;其它逻辑实现较为类似。我们先制作页面&#xff0c;之后再实现功能。 由于之前已经完成了…

源代码下载 第六章 注解式控制器详解

2019独角兽企业重金招聘Python工程师标准>>> 源代码请到附件中下载。 其他下载&#xff1a; 跟着开涛学SpringMVC 第一章源代码下载 第二章 Spring MVC入门 源代码下载 Controller接口控制器详解 源代码下载 源码下载——第四章 Controller接口控制器详解——跟着开…

WPF|快速添加新手引导功能(支持MVVM)

阅读导航前言案例一案例二案例三&#xff08;本文介绍的方式&#xff09;如何使用&#xff1f;控件如何开发的&#xff1f;总结1. 前言案例一站长分享过 眾尋 大佬的一篇 WPF 简易新手引导 一文&#xff0c;新手引导的效果挺不错的&#xff0c;如下图&#xff1a;该文给出的代码…

三、界面介绍(IVX快速手册)

三、集成开发环境界面介绍 通过本节你将了解 iVX 在线集成开发环境 界面&#xff0c;快速建立对 在线集成开发环境 的认识。 文章目录三、集成开发环境界面介绍3.1 界面区域3.2 舞台3.3 组件工具栏3.4 对象树/素材面板3.5 属性面板3.6 菜单面板3.7 逻辑工具面板3.8 辅助工具3.…

Android studio之提示Failed to resolve: com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.46

1、错误提示如下 Failed to resolve: com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.46 Show in Project Structure dialog Affected Modules: app2、解决办法 在project的build.gradle里面加入 maven { url https://jitpack.io }

【VB测绘程序设计】第二章 VB测绘程序基础

第一节 数据类型 VB中提供了以下11中基本的数据类型: 一、数值型 二、字符串 三、日期型 1.界面设计 2. 代码 <

React-引领未来的用户界面开发框架-读书笔记(六)

第12章 服务端渲染 想让搜索引擎抓取到你的站点&#xff0c;服务端渲染这一步不可或缺&#xff0c;服务端渲染还可以提升站点的性能&#xff0c;因为在加载JavaScript脚本的同时&#xff0c;浏览器就可以进行页面渲染。 React的虚拟DOM是其可被用于服务端渲染的关键。首先每个R…

TrimPath - Js模板引擎

当页面中引用template.js文件之后&#xff0c;脚本将创建一个TrimPath对象供你使用。 parseDOMTemplate(elementId,optionalDocument)  //获得模板字符串代码 得到页面中Id为elementId的DOM组件的InnerHTML&#xff0c;将其解析成一个模板&#xff0c;这个返回一个templateOb…