- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
QML基本语法QML是什么?
QML 是一中声明式语言,用来描述应用程序接口的――是什么样,有怎样的行为。在QML中,一个用户接口被指定为带有属性的对象是。
这个介绍主要面向只有很少或者没有编码经验的人。在QML中,JavaScript作为一种脚本语言被使用。因此在深入学习QML之前,也许你会想要去学一些关于JavaScript的知识(JavaScript: The Definitive Guide)。另外,对像HTML和CSS这样的网页技术有一些基础的了解也是相当有帮助的,但这些都不是必须的。
QML 的基本语法QML看起来像这样
import Qt 4.7
Rectangle {
? ???width: 200
? ???height: 200
? ???color: blue
? ???Image {
? ?? ?? ?source: pics/logo.png
? ?? ?? ?anchors.centerIn: parent
? ???}
}
复制代码
对象是通过类型而直接被指定的,紧随其后的是一对大括号。对象类型总是以大写字母开头。在上面的例子中,存在两个对象Rectangle和Image。在大括号之间,我们可以指定对象的相关信息,例如它的属性。属性是通过“property: value”这样的方式被呈现的。在上面的例子中,我们可以看到Image拥有一个属性叫做source,它被分配了一个值叫做pics/logo.png。属性和值被冒号分隔。
属性可以被一行行指定:
Rectangle {
? ???width: 100
? ???height: 100
}
复制代码
同时也可以在一个单行上指定多个属性:
Rectangle { width: 100; height: 100 }
复制代码
当多个property/value对被指定在一个单行上时,他们需要通过分号来分隔。
import声明是为了导入包含所有标准的QML元素的Qt模块。没有这个导入声明,Rectangle和Image元素都将不能被使用。
表达式
除了直接给属性指定值之外,你也可以像在JavaScript中一样通过表达式来指定。
Rotation {
? ???angle: 360 * 3
}
复制代码
这些表达式可以包含其他对象和属性,这样子的操作将会产生一个绑定关系,当这个表达式的值发生改变时,已经通过表达式指定了的属性的值也会自动更新到那个值。
Item {
? ???Text {
? ?? ?? ?id: text1
? ?? ?? ?text: Hello World
? ???}
? ???Text {
? ?? ?? ?id: text2
? ?? ?? ?text: text1.text
? ???}
}
复制代码
在上面的这个例子中,text2对象将会显示和text1一样的文字.如果text1改变了,text2也会自动变化为相同的值。
在引用其他对象时,可以通过对象的id 值,来进行引用。
QML注释
QML中的注释方式和Javascript 的相同。
单行注释使用//;
多行注释使用 /* … */ 。
Text {
? ???text: Hello world!/*print text*/
? ???//opacity: 0.5
}
复制代码
属性属性命名
属性通常以小写字符开头(附加属性除外)
属性类型
QML支持多种属性(具体参看QML Basic Types)。基本的属性包括 int, real, bool, string, color和lists。
Item {
? ???x: 10.5? ?? ?? ?? ? // a real property
? ???...
? ???state: details? ? // a string property
? ???focus: true? ?? ?? ?// a bool property
}
复制代码
QML的属性是属于类型安全的,也就是说属性的类型必须和所分配的值是相同的。例如,Item的x属性是一个real,如果你想要给他分配一个string值,就会得到一个错误。
Item {
? ???x: hello??// illegal!
}
复制代码
id属性
每个对象都可以指定一个专门的属性叫做id,这个属性的值必须是唯一的。在同一个QML文档中不能有相同的id值。通过指定一个唯一可用的id,对象就可以被其他对象和脚本引用。
Item {
? ???Rectangle {
? ?? ?? ?id: myRect
? ?? ?? ?width: 100
? ?? ?? ?height: 100
? ???}
? ???Rectangle {
? ?? ?? ?wi
文档评论(0)