日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

深入淺出學(xué)習(xí)eTs(六)eTs第一個控件編寫

Harmony&嵌入式學(xué)習(xí) ? 來源:Harmony&嵌入式學(xué)習(xí) ? 作者:Harmony&嵌入式學(xué) ? 2023-05-13 13:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)

一、控件基本屬性

在使用第一個控件前,我們需要了解一些控件都有哪些基礎(chǔ)屬性,比如說我們在Super Visual中使用過的長寬和字體大小等等,通用屬性有以下這些:

名稱 參數(shù)說明 默認(rèn)值 描述
width Length - 設(shè)置組件自身的寬度,缺省時使用元素自身內(nèi)容需要的寬度。
height Length - 設(shè)置組件自身的高度,缺省時使用元素自身內(nèi)容需要的高度。
size { width?: Length, height?: Length } - 設(shè)置高寬尺寸。
padding { top?: Length, right?: Length, bottom?: Length, left?: Length } | Length 0 設(shè)置內(nèi)邊距屬性。 參數(shù)為Length類型時,四個方向內(nèi)邊距同時生效。
margin { top?: Length, right?: Length, bottom?: Length, left?: Length } | Length 0 設(shè)置外邊距屬性。 參數(shù)為Length類型時,四個方向外邊距同時生效。
constraintSize { minWidth?: Length, maxWidth?: Length, minHeight?: Length, maxHeight?: Length } { minWidth: 0, maxWidth: Infinity, minHeight: 0, maxHeight: Infinity } 設(shè)置約束尺寸,組件布局時,進(jìn)行尺寸范圍限制。
layoutWeight number 0 容器尺寸確定時,元素與兄弟節(jié)點(diǎn)主軸布局尺寸按照權(quán)重進(jìn)行分配,忽略本身尺寸設(shè)置。 > 說明: > 僅在Row/Column/Flex布局中生效。

通過這些可以對組件的大小,組件內(nèi),組件外以及聯(lián)合邊距的內(nèi)容進(jìn)行調(diào)整。

這里再引入一個強(qiáng)制位移(之后可能會多次用到)

名稱 參數(shù)類型 默認(rèn)值 描述
align Alignment Center 設(shè)置元素內(nèi)容的對齊方式,只有當(dāng)設(shè)置的width和height大小超過元素本身內(nèi)容大小時生效。
direction Direction Auto 設(shè)置元素水平方向的布局,可選值參照Direction枚舉說明。
position { x: Length, y: Length } - 使用絕對定位,設(shè)置元素錨點(diǎn)相對于父容器頂部起點(diǎn)偏移位置。在布局容器中,設(shè)置該屬性不影響父容器布局,僅在繪制時進(jìn)行位置調(diào)整。
markAnchor { x: Length, y: Length } { x: 0, y: 0 } 設(shè)置元素在位置定位時的錨點(diǎn),以元素頂部起點(diǎn)作為基準(zhǔn)點(diǎn)進(jìn)行偏移。
offset { x: Length, y: Length } { x: 0, y: 0 } 相對布局完成位置坐標(biāo)偏移量,設(shè)置該屬性,不影響父容器布局,僅在繪制時進(jìn)行位置調(diào)整。

二、標(biāo)簽控件

Text:官方文檔

顯示一段文本的組件。

在之前的拖拽式UI中我們已經(jīng)使用過了該控件,通過修改Content屬性即可達(dá)到修改文本內(nèi)容的效果,他的其它屬性太多了,這里可以看上面的官方文檔。

wKgaomRfHfiAM5eJAACCM0s2pwg438.png


如上圖,eTs控件的基本調(diào)用方式是

interface TextInterface {
  (content?: string | Resource): TextAttribute;
}

即首先聲明一下我們是使用的什么控件(標(biāo)簽、按鈕、繪畫等等),然后在下面通過點(diǎn)+內(nèi)容的形式,對基本屬性進(jìn)行說明,如上對字體大小和背景顏色實(shí)現(xiàn)了說明。

其中content是顯示的內(nèi)容:

Text("Hello, eTs")

Text('Hello, LalHan')
  .width('100%')
  .textAlign(TextAlign.Center)

Text('大家一起深入淺出學(xué)習(xí)eTs,記得關(guān)注我')
  .maxLines(1)
  .textOverflow({overflow: TextOverflow.Ellipsis})

實(shí)現(xiàn)的效果如下圖:

wKgZomRfHfmAJ-wGAAC9qaQoUQk020.png

三、按鈕控件

Button:官方文檔

按鈕組件,可快速創(chuàng)建不同樣式的按鈕。

interface ButtonInterface {
  (): ButtonAttribute;
  (options: ButtonOptions): ButtonAttribute;
  (label: ResourceStr, options?: ButtonOptions): ButtonAttribute;
}

其中顯示內(nèi)容主要由label控制

Button('學(xué)習(xí)ets')
          .height(60)
          .width(200)
          .fontSize(30)
          .backgroundColor('#aabbcc')

四、組合應(yīng)用

本章節(jié)把Text和Button會結(jié)合起來,實(shí)現(xiàn)一個點(diǎn)擊改變數(shù)字的Demo

此時按鈕需要引入一個點(diǎn)擊屬性

事件

名稱 支持冒泡 功能描述
onClick(callback: (event?: ClickEvent) => void) 點(diǎn)擊動作觸發(fā)該方法調(diào)用,event參數(shù)見ClickEvent介紹。

ClickEvent對象說明

屬性名稱 類型 描述
screenX number 點(diǎn)擊點(diǎn)相對于設(shè)備屏幕左邊沿的X坐標(biāo)。
screenY number 點(diǎn)擊點(diǎn)相對于設(shè)備屏幕上邊沿的Y坐標(biāo)。
x number 點(diǎn)擊點(diǎn)相對于被點(diǎn)擊元素左邊沿的X坐標(biāo)。
y number 點(diǎn)擊點(diǎn)相對于被點(diǎn)擊元素上邊沿的Y坐標(biāo)。
target8+ EventTarget 被點(diǎn)擊元素對象。
timestamp number 事件時間戳。

在上面的程序中加入一個onclik()

        Button('學(xué)習(xí)ets')
          .height(60)
          .width(200)
          .fontSize(30)
          .backgroundColor('#aabbcc')
          .onClick(() => {
          })

此時如果想點(diǎn)下按鈕,更改Text的顯示內(nèi)容,那么需要把Text的顯示內(nèi)容設(shè)置為一個變量

@State message: string = '點(diǎn)擊我后改變內(nèi)容'

wKgaomRfHfmAC2hkAABJQhMRHW4062.png

這個需要放置在初始化的地方

此時把更改內(nèi)容的程序加入到按鍵中,將Text的屬性給到變量

Text(this.message)

          .maxLines(2)
          .fontSize(30)
        Button('學(xué)習(xí)ets')
          .height(60)
          .width(200)
          .fontSize(30)
          .backgroundColor('#aabbcc')
          .onClick(() => {
            this.message = "已經(jīng)改變了喔"
          })

wKgZomRfHfqAAQHaAACwM-Wsous943.png

在點(diǎn)擊后對message的變量進(jìn)行修改,進(jìn)行測試

五、測試效果

wKgaomRfHfuAei5RAACCp5kt6Y4689.gif

如上方測試,已經(jīng)實(shí)現(xiàn)了動態(tài)效果

編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ets
    ets
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    1957
  • OpenHarmony
    +關(guān)注

    關(guān)注

    33

    文章

    3979

    瀏覽量

    21388
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    #深入淺出學(xué)習(xí)eTs#(八)“猜大小”小游戲

    本項(xiàng)目Gitee倉地址:[深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    的頭像 發(fā)表于 05-17 15:08 ?2205次閱讀
    #<b class='flag-5'>深入淺出</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>eTs</b>#(八)“猜大小”小游戲

    #深入淺出學(xué)習(xí)eTs#(九)變紅碼?專屬二維碼生成

    本項(xiàng)目Gitee倉地址: 深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    的頭像 發(fā)表于 05-13 13:21 ?2771次閱讀
    #<b class='flag-5'>深入淺出</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>eTs</b>#(九)變紅碼?專屬二維碼生成

    #深入淺出學(xué)習(xí)eTs#(十)藍(lán)藥丸還是紅藥丸

    本項(xiàng)目Gitee倉地址: 深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    的頭像 發(fā)表于 05-17 15:07 ?2163次閱讀
    #<b class='flag-5'>深入淺出</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>eTs</b>#(十)藍(lán)藥丸還是紅藥丸

    #深入淺出學(xué)習(xí)eTs#()模擬器/真機(jī)環(huán)境搭建

    本項(xiàng)目的Gitee倉地址: 深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com
    發(fā)表于 12-24 13:02

    #深入淺出學(xué)習(xí)eTs#(二)拖拽式UI

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    發(fā)表于 12-29 09:56

    #深入淺出學(xué)習(xí)eTs#(三)UI布局

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    發(fā)表于 12-29 09:59

    #深入淺出學(xué)習(xí)eTs#(四)登陸界面UI

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    發(fā)表于 12-29 10:01

    #深入淺出學(xué)習(xí)eTs#(五)eTs語言初識

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    發(fā)表于 12-29 10:02

    #深入淺出學(xué)習(xí)eTs#(編寫eTs第一個控件

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    發(fā)表于 12-29 10:05

    #深入淺出學(xué)習(xí)eTs#(七)判斷密碼是否正確

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    發(fā)表于 12-29 10:06

    #深入淺出學(xué)習(xí)eTs#(九)變紅碼?專屬二維碼生成

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    發(fā)表于 12-29 10:09

    #深入淺出學(xué)習(xí)eTs#(十一)別忘了吃藥喔

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    發(fā)表于 12-29 13:33

    深入淺出學(xué)習(xí)eTs)模擬器/真機(jī)環(huán)境搭建

    本項(xiàng)目的Gitee倉地址: 深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com
    的頭像 發(fā)表于 05-13 13:17 ?3333次閱讀
    <b class='flag-5'>深入淺出</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>eTs</b>(<b class='flag-5'>一</b>)模擬器/真機(jī)環(huán)境搭建

    深入淺出學(xué)習(xí)eTs(七)如何判斷密碼是否正確

    本項(xiàng)目Gitee倉地址: 深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    的頭像 發(fā)表于 05-13 13:20 ?1986次閱讀
    <b class='flag-5'>深入淺出</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>eTs</b>(七)如何判斷密碼是否正確

    深入淺出學(xué)習(xí)eTs之九宮格密碼鎖功能實(shí)現(xiàn)

    本項(xiàng)目Gitee倉地址:深入淺出eTs學(xué)習(xí): 帶大家深入淺出學(xué)習(xí)eTs (gitee.com)
    的頭像 發(fā)表于 05-13 13:25 ?3098次閱讀
    <b class='flag-5'>深入淺出</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>eTs</b>之九宮格密碼鎖功能實(shí)現(xiàn)
    土默特右旗| 红河县| 广安市| 馆陶县| 二手房| 滨州市| 包头市| 吴桥县| 凉山| 房产| 屏南县| 榆林市| 县级市| 乌拉特前旗| 铜山县| 合阳县| 池州市| 华池县| 邻水| 类乌齐县| 康定县| 西昌市| 龙州县| 页游| 崇义县| 岢岚县| 罗城| 全南县| 桂平市| 旬邑县| 黄龙县| 灵川县| 汽车| 临武县| 西贡区| 永靖县| 咸宁市| 长沙市| 沙湾县| 淳化县| 松阳县|