一、前言

前面的教程,已经完整讲述了用B4A开发安卓APP从新建项目到编译发布的完整流程。从本篇开始,我们将会从B4A的细节处着手,一步一步掌握B4A。

从本篇开始的子系列为“控件篇”系列,本系列将从日常使用的角度出发,着重讲一些控件的常用方式及特殊用法。

本篇是“控件篇”的第一篇,主要讲解“控件”的公有属性。

相信看完的你,一定会有所收获!

本地地址:https://www.cnblogs.com/lesliexin/p/17157106.html


二、公有属性

在可视化设计器中的属性窗口,选中控件后可以看到该控件的所有属性。

因为控件都是类似的,所以会有一些公有的属性,像上图中的“Main”和“通用属性”分组中,绝大多数属性都是每个控件都拥有的。

下面,我们对一些常用的属性进行讲解。

1,名称

此属性是用来区分控件的“名字”,具有唯一性,是不可相同的。

关于控件的命名规则有很多种,如按钮名称一般以“btn”开头,标签名称一般以“lbl”开头等等。

这种命名规则是为了有更好的可读性,并不是强制的。

2,事件名称

事件名称,即生成控件事件时,事件的前缀名称,见下图的“Button1”:

在修改上面的“名称”属性时,会发现事件名称跟随改变。一般而言,每个控件都有各自的对应事件,所以控件的名称与事件名称都不相同。

不过,在动态生成控件(如:通过配置文件来批量生成指定控件)时,因为动态生成的同类型控件大多具有类似的功能,所以会将这些同类型控件的事件名称设置为一样的,也就是所有同类型的控件都指向这一个事件。而在事件的实现中,可以通过控件的Tag属性区分具体是哪个控件触发的。这样可以节省大量的代码,实现起来也非常直观。此非本文重点,不再进行展开,后续文章会有专门讲解。

3,Parent

Parent属性,也就是控件的“父控件”、“父容器”。在程序的布局中,经常会使用各种容器类控件对其它控件进行分组,以方便控制。(注:B4A的IDE自带中文语言,但是翻译却是中英夹杂,为了方便对照,本文不再进行二次翻译,直接取IDE上显示的名称。读者请注意区分。)

控件分属不同的“父容器”后,也就形成一个“控件树”,在可视化设计器的“控件树”窗口,可以直观的看到各个控件的所属层级。

我们即可以手动设置控件的“Parent”属性,也可以在“控件树”上拖动控件,直观快捷的进行调整。

4,水平锚定、垂直锚定

所有的控件都可以视为一个“矩形”,而“锚定”,即是锚定这个矩形的“边”,当这个“边”被锚定后,其“边”相对于“父容器”的位置就不会再发生改变。

水平锚定和垂直锚定都有三个选项,对于水平锚定而言,这三个选项的含义分别是“固定左边位置”、“固定右边位置”、“左右两端固定”。同理,对于垂直锚定而言,其含义分别是“固定上边位置”、“固定下边位置”、“上现两端固定”。

在选择不同的锚定项后,布局设计器里被锚定的边将会高亮显示一个圆点。

面设置不同的选项下,下面的四个属性的含义也会发生变化,具体本文不过多赘述,可通过下面的动图演示直观的感受。

5,Enabled、Visible

对于控件而言,此两个属性是非常常用的,一个是控件是否可用,一个是控件是否显示。

很好理解,不再过多叙述。


三、总结

控件,是APP的核心,APP所展现的一切,都是由诸多控件构成的。

本篇作为“控件篇”系列的开篇,讲解了一下主要的公有属性,因为公有属性是通用的,所以系列后续文章就可以节省大量笔墨。

“控件篇”系列的下一篇,将会讲一下最常用的控件:Button,也就是按钮控件。

敬请期待。


-【END】-

(原创)【B4A】一步一步入门05:控件、公有属性、水平锚定、垂直锚定(控件篇01)的更多相关文章

  1. (原创)【B4A】一步一步入门02:可视化界面设计器、控件的使用

    一.前言 上篇 (原创)[B4A]一步一步入门01:简介.开发环境搭建.HelloWorld 中我们创建了默认的项目,现在我们来看一下B4A项目的构成,以及如何所见即所得的设计界面,并添加和使用自带的 ...

  2. Membership三步曲之入门篇 - Membership基础示例

    Membership 三步曲之入门篇 - Membership基础示例 Membership三步曲之入门篇 -  Membership基础示例 Membership三步曲之进阶篇 -  深入剖析Pro ...

  3. [转]Membership三步曲之入门篇 - Membership基础示例

    本文转自:http://www.cnblogs.com/jesse2013/p/membership.html Membership三步曲之入门篇 - Membership基础示例   Members ...

  4. [EntLib]微软企业库5.0 学习之路——第一步、基本入门

    话说在大学的时候帮老师做项目的时候就已经接触过企业库了但是当初一直没明白为什么要用这个,只觉得好麻烦啊,竟然有那么多的乱七八糟的配置(原来我不知道有配置工具可以进行配置,请原谅我的小白). 直到去年在 ...

  5. (原创)超详细一步一步在eclipse中配置Struts2环境,无基础也能看懂

    (原创)超详细一步一步在eclipse中配置Struts2环境,无基础也能看懂 1. 在官网https://struts.apache.org下载Struts2,建议下载2.3系列版本.从图中可以看出 ...

  6. ASP.NET 安全系列 Membership三步曲之入门篇 - Jesse Liu

    Membership 三步曲 ASP.NET 安全系列 Membership三步曲之入门篇 ASP.NET 安全系列 Membership三步曲之进阶篇 ASP.NET 安全系列 Membership ...

  7. 【Linux】一步一步学Linux——虚拟机安装和卸载(05)

    目录 00. 目录 01. Workstation Pro 15.0安装简介 02. Windows 主机上安装 Workstation Pro 15.0 03. Linux 主机上安装 Workst ...

  8. 一步一步理解 python web 框架,才不会从入门到放弃 -- 开始使用 Django

    背景知识 要使用 Django,首先必须先安装 Django. 下图是 Django 官网的版本支持,我们可以看到上面有一个 LTS 存在.什么是 LTS 呢?LTS ,long-term suppo ...

  9. [C#] (原创)一步一步教你自定义控件——01,TrackBar

    一.前言 技术没有先进落后之分,只有合不合适. WinForm有着非常多的优点,在使用WinForm久了之后,难免会觉得WinForm自带的某些控件外观上有些许朴素.或者功能上有些不如意,自然而然便想 ...

  10. [C#] (原创)一步一步教你自定义控件——04,ProgressBar(进度条)

    一.前言 技术没有先进与落后,只有合适与不合适. 本篇的自定义控件是:进度条(ProgressBar). 进度条的实现方式多种多样,主流的方式有:使用多张图片去实现.使用1个或2个Panel放到Use ...

随机推荐

  1. 基于EasyCode定制Mybatisplus全自动单表实现:新增/批量新增/修改/批量删除/分页查询/ID查询

    基于EasyCode定制Mybatisplus全自动单表实现CRUD接口 分页查询 ID查询 新增 批量新增 修改 批量删除 注意使用了MybatisPlus的自动填充功能,和insertBatchS ...

  2. uniapp vue3下的代理转发不生效问题,亲测有效解决

    以前配置过vue vite 的代理转发,没想到在uniapp的代理转发下翻车了,其实是一个很小的问题.调试过程中,尝试了webpack.vite 等写法 在根目录下 创建了 vite.config.j ...

  3. 每个Java程序员都必须知道的四种负载均衡算法

    前言 一般来说,我们在设计系统的时候,为了系统的高扩展性,会尽可能的创建无状态的系统,这样我们就可以采用集群的方式部署,最终很方便的根据需要动态增减服务器数量.但是,要使系统具有更好的可扩展性,除了无 ...

  4. Joplin修改笔记存储位置

    默认存储路径 笔记的默认保存位置可以通过 工具 > 选项 > 通用选项 ,在最上方可以看到路径 使用Windows快捷方式启动 在Joplin的快捷方式上右击,选择属性,然后选择快捷方式选 ...

  5. SpringBoot源码学习3——SpringBoot启动流程

    系列文章目录和关于我 一丶前言 在 <SpringBoot源码学习1--SpringBoot自动装配源码解析+Spring如何处理配置类的>中我们学习了SpringBoot自动装配如何实现 ...

  6. 无需依赖Docker环境制作镜像

    随着高版本的Kubernetes弃用Docker,企业也可以不依赖Docker环境了,但是DevOps通过Kubernetes部署的话,仍然需要制作镜像,那么在没有Docker环境的情况下如何制作呢? ...

  7. Dijkstra求最短路 I(朴素算法)

    这道题目又是一个新算法,名叫Dijkstra 主要思路是:输入+dist和vis初始化(都初始化为0x3f)+输入g(邻接矩阵)+Dijkstra函数       Dijkstra函数:先将dist[ ...

  8. springcloud11 spring cloud config

    1.spring cloud config是什么 官网:https://cloud.spring.io/spring-cloud-static/spring-cloud-config/2.2.1.RE ...

  9. Python关键字 asynico

    同步和异步 同步和异步是指程序的执行方式.在同步执行中,程序会按顺序一个接一个地执行任务,直到当前任务完成.而在异步执行中,程序会在等待当前任务完成的同时,执行其他任务. 同步执行意味着程序会阻塞,等 ...

  10. STM32F1库函数初始化系列:串口DMA空闲接收_DMA发送

    1 void USART3_Configuration(void) //串口3配置---S 2 { 3 DMA_InitTypeDef DMA_InitStructure; 4 USART_InitT ...