添加小结:你好世界
This commit is contained in:
parent
5bcef47617
commit
71ceab305f
Binary file not shown.
After Width: | Height: | Size: 7.3 KiB |
Binary file not shown.
After Width: | Height: | Size: 6.3 KiB |
|
@ -15,7 +15,7 @@
|
||||||
| 起步 | 什么是Slint | 完成 |
|
| 起步 | 什么是Slint | 完成 |
|
||||||
| 起步 | 搭建C++开发环境 | 完成 |
|
| 起步 | 搭建C++开发环境 | 完成 |
|
||||||
| 起步 | 搭建Rust开发环境 | 完成 |
|
| 起步 | 搭建Rust开发环境 | 完成 |
|
||||||
| | | |
|
| 起步 | 你好世界 | 完成 |
|
||||||
|
|
||||||
|
|
||||||
## 参考连接
|
## 参考连接
|
||||||
|
|
|
@ -0,0 +1,96 @@
|
||||||
|
了解完项目如何创建之后,我们来创建一个简单的程序来介绍Slint语言的基本模块。
|
||||||
|
|
||||||
|
**application.slint**
|
||||||
|
```Sint
|
||||||
|
import { Button } from "std-widgets.slint";
|
||||||
|
component BaseView {
|
||||||
|
Rectangle {
|
||||||
|
background: #FF6699;
|
||||||
|
|
||||||
|
VerticalLayout {
|
||||||
|
text := Text {
|
||||||
|
text: "Hello, World!";
|
||||||
|
font-size: 24pt;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
Button {
|
||||||
|
text: "Click me!";
|
||||||
|
clicked => {
|
||||||
|
text.text = "Clicked!";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export component MainWindow inherits Window {
|
||||||
|
preferred-height: 800px;
|
||||||
|
preferred-width: 600px;
|
||||||
|
|
||||||
|
BaseView {
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
![](Img/0-5-1.png)
|
||||||
|
窗口运行效果(虽然配色有点丑,但是问题不大)
|
||||||
|
|
||||||
|
|
||||||
|
![](Img/0-6-1.png)
|
||||||
|
当点击按钮后,“Hello, World!" 就会变成"Clicked!"
|
||||||
|
|
||||||
|
首先我们先看代码的这个部分:
|
||||||
|
```Slint
|
||||||
|
export component MainWindow inherits Window {
|
||||||
|
preferred-height: 800px;
|
||||||
|
preferred-width: 600px;
|
||||||
|
|
||||||
|
BaseView {
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
我们要创建一个程序,就一定需要定义一个用来呈现内容的窗口,在这里我们定义了一个名叫`MainWindow`的组件,为了定义一个组建需要在前方添加`component`关键字, 使用`inherits`关键字表明我们继承某个组件。在这里我们继承Slint内置的`Window`以用来创建窗口。
|
||||||
|
|
||||||
|
我们并不一定需要将窗口命名为`MainWindow`,这可以自己命名。实际上控制程序展现哪个窗口的是后端代码,使用`export`关键字将会导出此组件表现在代码上就是slint文件被编译成.hpp或者.rust文件后,再调用`run()`的方式启动。我们会在之后的章节更深入的讨论Slint语言,现在只需要知道它描述了一系列有层次的用户界面。
|
||||||
|
|
||||||
|
```Slint
|
||||||
|
component BaseView {
|
||||||
|
Rectangle {
|
||||||
|
background: #FF6699;
|
||||||
|
|
||||||
|
VerticalLayout {
|
||||||
|
text := Text {
|
||||||
|
text: "Hello, World!";
|
||||||
|
font-size: 24pt;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
Button {
|
||||||
|
text: "Click me!";
|
||||||
|
clicked => {
|
||||||
|
text.text = "Clicked!";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
在这个部分,我们自定义了一个组件,也没有继承某个Slint组件。这段slint代码定义了一个名为`BaseView`的组件,该组件包含一个矩形背景和一个垂直布局。布局中包含一个文本标签和一个按钮。当用户点击按钮时,文本标签的文本将更改为“Clicked!”。在这里代码做了这几件事:
|
||||||
|
|
||||||
|
1. 导入Button组件,来自std-widgets.slint库。
|
||||||
|
2. 定义BaseView组件。
|
||||||
|
3. 在BaseView组件中,创建一个矩形背景的Rectangle组件。
|
||||||
|
4. 在矩形背景上,创建一个垂直布局的VerticalLayout组件。
|
||||||
|
5. 在垂直布局中,创建一个文本标签的Text组件,显示文本“Hello, World!”。
|
||||||
|
6. 为Text组件设置字体大小为24pt,颜色为白色。
|
||||||
|
7. 创建一个按钮的Button组件,显示文本“Click me!”。
|
||||||
|
8. 为Button组件添加一个点击事件处理程序,当用户点击按钮时,触发文本标签的文本更改。
|
||||||
|
9.
|
||||||
|
想要让按钮点击后针对某一个组件做出一些处理,那么就需要为需要处理的组件添加一个名字,使用 `变量名 := 组件名`的方式便可以做到这一点。在按钮中设置了点击事件,在里面可以放一些类似`javaScript`语言的脚本代码。在这个代码块中,我们取得了变量`text`的`text`属性,将它赋值为"Clicked!"
|
Loading…
Reference in New Issue