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

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

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

【AWTK使用經(jīng)驗(yàn)】如何自定義combo_box下拉框樣式

ZLG致遠(yuǎn)電子 ? 2024-05-23 08:25 ? 次閱讀

AWTK是基于C語(yǔ)言開發(fā)的跨平臺(tái)GUI框架。《AWTK使用經(jīng)驗(yàn)》系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案,例如:如何加載外部資源?如何設(shè)計(jì)自定義進(jìn)度條?這些都會(huì)在系列文章進(jìn)行解答。

假設(shè)需要在 ZTP800示教器 實(shí)現(xiàn)一個(gè)用于日期選擇的下拉框,并且還要求對(duì)下拉框做一些美化,此時(shí)就需要用戶自定義下拉框樣式。下面將結(jié)合該需求介紹兩種修改combo_box下拉框樣式的方法。

利用theme_of_popup屬性修改樣式

第一種方式是通過combo_box的theme_of_popup屬性修改下拉框樣式,該屬性需要指定一個(gè)樣式文件名稱,combo_box控件會(huì)應(yīng)用該文件內(nèi)的下拉框樣式。

e33f64a2-189a-11ef-bebc-92fbcf53809c.png?

圖2使用theme_of_popup屬性修改下拉框樣式在項(xiàng)目的design/default/styles目錄下創(chuàng)建一個(gè)xml文件作為下拉框的樣式文件,并配置以下兩個(gè)樣式:1. 彈出窗口本身的樣式,style名稱為“combobox_popup”。

"combobox_popup" bg_color="#071F4B" border_color="#00000000">

2. 列表項(xiàng)的樣式,style名稱為“default”。

"default" bg_color="#071F4B" font_size="24" icon_at="left" text_color="#FFFFFF"> "#2E74B5"/> "#2E74B5"/> "#5B9BD6"/> "#2E74B5"/>

最后可以在AWTK Designer中設(shè)置combo_box控件的theme_of_popup屬性并打包資源文件,另外也可以使用C代碼方式動(dòng)態(tài)設(shè)置樣式:

combo_box_set_theme_of_popup(combo_box, "my_combo_box");


利用open_window屬性修改樣式

第二種方式是通過修改combo_box控件的open_window屬性修改下拉框樣式,該屬性接收一個(gè)popup窗體的名稱,用戶在popup實(shí)現(xiàn)自定義下拉框。若同時(shí)設(shè)置了options屬性與open_window屬性,會(huì)優(yōu)先打開open_window屬性的popup窗體。

e35d0ee4-189a-11ef-bebc-92fbcf53809c.png

圖3使用open_window屬性修改下拉框樣式

1. combo_box控件open_window屬性用法

在AWTK Designer創(chuàng)建一個(gè)popup類型窗體并進(jìn)行布局,使用combo_box_item控件作為下拉框選項(xiàng)。

完成popup窗體布局后,可以在AWTK Designer中設(shè)置combo_box控件的open_window屬性,也可以使用C代碼方式動(dòng)態(tài)設(shè)置樣式:

combo_box_set_open_window(combo_box, "combo_box_menu");

2. 獲取與設(shè)置combo_box當(dāng)前選擇項(xiàng)索引值

默認(rèn)的combo_box控件可以通過控件對(duì)象的selected_index屬性直接讀取當(dāng)前選擇項(xiàng)的索引值,也可通過控件函數(shù)combo_box_set_selected_index設(shè)置當(dāng)前選擇項(xiàng)索引值。

需要注意的是設(shè)置open_window屬性后還要設(shè)置相同的options屬性才可以正常獲取與設(shè)置當(dāng)前選項(xiàng)索引值。例如在open_window打開的popup三個(gè)選項(xiàng)分別為“星期一”、“星期二”和“星期三”,則需要設(shè)置combo_box控件options屬性為“0:星期一;1:星期二;2:星期三”,這樣才能通過控件對(duì)象屬性和控件函數(shù)獲取與設(shè)置當(dāng)前選項(xiàng)的索引值。

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

    關(guān)注

    180

    文章

    7581

    瀏覽量

    135542
  • 示教器
    +關(guān)注

    關(guān)注

    2

    文章

    27

    瀏覽量

    3732
  • awtk
    +關(guān)注

    關(guān)注

    0

    文章

    38

    瀏覽量

    200
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    AWTK使用經(jīng)驗(yàn)】如何響應(yīng)物理按鍵

    AWTK是基于C語(yǔ)言開發(fā)的跨平臺(tái)GUI框架。《AWTK使用經(jīng)驗(yàn)》系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案,例如:如何加載外部資源?如何設(shè)計(jì)
    的頭像 發(fā)表于 06-06 08:25 ?705次閱讀
    【<b class='flag-5'>AWTK</b>使用<b class='flag-5'>經(jīng)驗(yàn)</b>】如何響應(yīng)物理按鍵

    AWTK使用經(jīng)驗(yàn)】如何添加中文輸入法

    AWTK是基于C語(yǔ)言開發(fā)的跨平臺(tái)GUI框架?!?b class='flag-5'>AWTK使用經(jīng)驗(yàn)》系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案,例如:如何加載外部資源?如何設(shè)計(jì)
    的頭像 發(fā)表于 06-20 08:25 ?905次閱讀
    【<b class='flag-5'>AWTK</b>使用<b class='flag-5'>經(jīng)驗(yàn)</b>】如何添加中文輸入法

    1602自定義字符

    1602液晶能夠顯示自定義字符,能夠根據(jù)讀者的具體情況顯示自定義字符。
    發(fā)表于 01-20 15:43 ?1次下載

    自定義信息模塊

    易語(yǔ)言是一門以中文作為程序代碼編程語(yǔ)言學(xué)習(xí)例程:自定義信息模塊
    發(fā)表于 06-07 10:41 ?2次下載

    自定義高級(jí)表格邊框樣式例程

    易語(yǔ)言是一門以中文作為程序代碼編程語(yǔ)言學(xué)習(xí)例程:自定義高級(jí)表格邊框樣式例程
    發(fā)表于 06-07 10:41 ?7次下載

    鴻蒙系統(tǒng)如何設(shè)置自定義下拉刷新控件

    Ohos-MaterialRefreshLayout 是一個(gè)自定義 Material 風(fēng)格下拉刷新控件,支持設(shè)置水波紋效果,支持下拉刷新侵入式和非侵入式,初始化自動(dòng)刷新及上滑加載更多,支持刷新頭部
    的頭像 發(fā)表于 09-13 09:24 ?3245次閱讀

    自定義下拉刷新控件

    這是一個(gè)自定義下拉刷新控件,包含有趣的動(dòng)畫。 概述 支持下拉刷新動(dòng)畫效果 支持下拉刷新回調(diào)狀態(tài)返回 集成 方式一: 通過library生成har包,添加har包到libs文件夾內(nèi) 在e
    發(fā)表于 03-22 09:30 ?2次下載

    OpenHarmony自定義組件ProgressWithText

    組件介紹 本示例是OpenHarmony自定義組件ProgressWithText。 在原來進(jìn)度條的上方加了一個(gè)文本,動(dòng)態(tài)顯示當(dāng)前進(jìn)度并調(diào)整位置。 調(diào)用方法
    發(fā)表于 03-23 14:03 ?1次下載
    OpenHarmony<b class='flag-5'>自定義</b>組件ProgressWithText

    自定義視圖組件教程案例

    自定義組件 1.自定義組件-particles(粒子效果) 2.自定義組件- pulse(脈沖button效果) 3.自定義組件-progress(progress效果) 4.
    發(fā)表于 04-08 10:48 ?14次下載

    ArkUI如何自定義彈窗(eTS)

    自定義彈窗其實(shí)也是比較簡(jiǎn)單的,通過CustomDialogController類就可以顯示自定義彈窗。
    的頭像 發(fā)表于 08-31 08:24 ?2048次閱讀

    自定義算子開發(fā)

    一個(gè)完整的自定義算子應(yīng)用過程包括注冊(cè)算子、算子實(shí)現(xiàn)、含自定義算子模型轉(zhuǎn)換和運(yùn)行含自定義op模型四個(gè)階段。在大多數(shù)情況下,您的模型應(yīng)該可以通過使用hb_mapper工具完成轉(zhuǎn)換并順利部署到地平線芯片上……
    的頭像 發(fā)表于 04-07 16:11 ?2628次閱讀
    <b class='flag-5'>自定義</b>算子開發(fā)

    labview超快自定義控件制作和普通自定義控件制作

    labview超快自定義控件制作和普通自定義控件制作
    發(fā)表于 08-21 10:32 ?11次下載

    AWTK使用經(jīng)驗(yàn)】如何設(shè)計(jì)立體電池進(jìn)度條?

    AWTK是基于C語(yǔ)言開發(fā)的跨平臺(tái)GUI框架?!?b class='flag-5'>AWTK使用經(jīng)驗(yàn)》系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案,例如:如何加載外部資源?如何設(shè)計(jì)
    的頭像 發(fā)表于 04-18 08:25 ?375次閱讀
    【<b class='flag-5'>AWTK</b>使用<b class='flag-5'>經(jīng)驗(yàn)</b>】如何設(shè)計(jì)立體電池進(jìn)度條?

    AWTK 開源串口屏開發(fā)(18) - 用 C 語(yǔ)言自定義命令

    編寫代碼即可實(shí)現(xiàn)常見的應(yīng)用。但是,有時(shí)候我們需要自定義一些命令,以實(shí)現(xiàn)一些特殊的功能。本文檔介紹如何使用C語(yǔ)言自定義命令。1.實(shí)現(xiàn)hmi_model_cmd_t接口
    的頭像 發(fā)表于 05-11 08:24 ?373次閱讀
    <b class='flag-5'>AWTK</b> 開源串口屏開發(fā)(18) - 用 C 語(yǔ)言<b class='flag-5'>自定義</b>命令

    AWTK使用經(jīng)驗(yàn)】如何播放視頻或攝像頭畫面

    AWTK是基于C語(yǔ)言開發(fā)的跨平臺(tái)GUI框架?!?b class='flag-5'>AWTK使用經(jīng)驗(yàn)》系列文章將介紹開發(fā)AWTK過程中一些常見問題與解決方案,例如:如何加載外部資源?如何設(shè)計(jì)
    的頭像 發(fā)表于 07-04 08:25 ?495次閱讀
    【<b class='flag-5'>AWTK</b>使用<b class='flag-5'>經(jīng)驗(yàn)</b>】如何播放視頻或攝像頭畫面