1919
2020首先,我们需要包含 LCUI 库的头文件,并初始化 LCUI 应用程序。
2121
22- ``` c title=main.c
22+ ``` c title=" main.c"
2323#include < LCUI.h>
2424#include < LCUI/main.h>
2525
@@ -38,7 +38,7 @@ LCUI.h 是 LCUI 库的头文件,而 LCUI/main.h 是则是程序主入口的头
3838
3939LCUI 应用程序的用户界面是由**组件**组成的。组件拥有自己的逻辑和外观,可以小到一个按钮,也可以大到整个页面。
4040
41- ```c title=main.c
41+ ```c title=" main.c"
4242#include <LCUI.h>
4343#include <LCUI/main.h>
4444
@@ -66,7 +66,7 @@ import Window from "@site/src/components/QuickStart/Window";
6666
6767LCUI 的组件基于原型来实现组件的抽象和继承,组件原型记录了组件的创建、销毁、绘制、估算尺寸等方法,通过创建组件原型然后修改这些方法即可创建你的自定义组件。
6868
69- ``` c title=main.c
69+ ``` c title=" main.c"
7070#include < LCUI.h>
7171#include < LCUI/main.h>
7272
@@ -115,7 +115,7 @@ LCUI 包含 CSS 解析和选择引擎,你可以使用一些简单的 CSS 规
115115
116116首先创建一个 css 文件,填入以下内容:
117117
118- ```css title=main.css
118+ ```css title=" main.css"
119119root {
120120 padding: 24px;
121121}
@@ -129,7 +129,7 @@ root {
129129
130130然后在 ` main() ` 函数中调用 ` ui_load_css_file() ` 函数从文件加载 CSS 规则,再调用 ` ui_widget_add_class() ` 函数为 text 组件添加 title 类名,以应用 CSS 文件中定义的 ` .title ` 的样式。
131131
132- ``` c title=main.c
132+ ``` c title=" main.c"
133133int main (int argc, char * argv[ ] )
134134{
135135 lcui_init ();
@@ -200,7 +200,7 @@ LCUI 支持流式布局(Flow Layout)和弹性盒子布局(Flexible Box)
200200
201201以常见的垂直水平居中布局为例,我们可以使用弹性盒子布局来实现:
202202
203- ``` css title=main.css
203+ ``` css title=" main.css"
204204root {
205205 padding : 24px ;
206206 // highlight-start
@@ -235,7 +235,7 @@ root {
235235
236236XML 写法如下:
237237
238- ``` xml title=main.xml
238+ ``` xml title=" main.xml"
239239<?xml version =" 1.0" encoding =" UTF-8" ?>
240240<lcui-app >
241241 <resource type =" text/css" src =" main.css" />
@@ -252,7 +252,7 @@ resource 标签用于引入包括 CSS、字体在内的资源文件。ui 标签
252252
253253在 ` main() ` 函数中调用 ` ui_load_xml_file() ` 函数加载这个 XML 文件:
254254
255- ``` c title=main.c
255+ ``` c title=" main.c"
256256int main (int argc, char * argv[ ] )
257257{
258258 lcui_init ();
@@ -287,7 +287,7 @@ LCUI 的组件是通过事件来实现与用户交互的,接下来我们让的
287287
288288首先,修改 XML 文件,为需要操作的组件添加 id 属性,以便于在代码中访问它们。
289289
290- ```xml title=main.xml
290+ ```xml title=" main.xml"
291291<?xml version="1.0" encoding="UTF-8" ?>
292292<lcui-app>
293293 <resource type="text/css" src="main.css"/>
@@ -304,7 +304,7 @@ LCUI 的组件是通过事件来实现与用户交互的,接下来我们让的
304304
305305然后,添加点击(Click)事件处理函数和事件绑定。
306306
307- ``` c title=main.c
307+ ``` c title=" main.c"
308308// highlight-start
309309void handle_my_button_click (ui_widget_t * w, ui_event_t * e, void * arg)
310310{
@@ -349,15 +349,15 @@ import EventHandlerExample from '@site/src/components/QuickStart/EventHandlerExa
349349
350350首先,你需要定义组件状态的数据结构:
351351
352- ```c title=main.c
352+ ```c title=" main.c"
353353typedef struct {
354354 int count;
355355} my_button_t;
356356```
357357
358358在初始化函数中初始化状态:
359359
360- ``` c title=main.c
360+ ``` c title=" main.c"
361361void my_button_init (ui_widget_t * w)
362362{
363363 // highlight-start
@@ -371,7 +371,7 @@ void my_button_init(ui_widget_t *w)
371371
372372然后,定义一个更新函数,用于将状态转变为用户界面上实际要展示内容:
373373
374- ```c title=main.c
374+ ```c title=" main.c"
375375void my_button_update(ui_widget_t *w)
376376{
377377 char str[64];
@@ -385,7 +385,7 @@ void my_button_update(ui_widget_t *w)
385385
386386初始化函数中也需要调用它来更新初始内容:
387387
388- ``` c title=main.c
388+ ``` c title=" main.c"
389389void my_button_init (ui_widget_t * w)
390390{
391391 my_button_t * data ;
@@ -399,7 +399,7 @@ void my_button_init(ui_widget_t *w)
399399
400400之后,添加点击事件的处理函数,在里面更改状态并进行更新:
401401
402- ```c title=main.c
402+ ```c title=" main.c"
403403// highlight-start
404404void my_button_on_click(ui_widget_t *w, ui_event_t *e, void *arg)
405405{
@@ -425,7 +425,7 @@ void my_button_init(ui_widget_t *w)
425425
426426最后,删掉 ` main() ` 中的事件绑定代码,像这样:
427427
428- ``` c title=main.c
428+ ``` c title=" main.c"
429429int main (int argc, char * argv[ ] )
430430{
431431 lcui_init ();
@@ -444,7 +444,7 @@ int main(int argc, char *argv[])
444444
445445你可以在 XML 文件中添加多个 my-button 组件,然后尝试点击不同的按钮:
446446
447- ```xml title=main.xml
447+ ```xml title=" main.xml"
448448<?xml version="1.0" encoding="UTF-8" ?>
449449<lcui-app>
450450 <resource type="text/css" src="main.css"/>
0 commit comments