【完结13章】C++ Qt6 QML入门进阶与项目实战视频教程

woaidaqipaiqiu1122 · · 126 次点击 · · 开始浏览    
【完结13章】C++ Qt6 QML入门进阶与项目实战视频教程 从 Qt 4.7 开始,Qt 引入了一种声明式脚本语言,称为 QML(Qt Meta Language 或者 Qt Modeling Language),作为 C++ 语言的一种替代。而 Qt Quick 就是使用 QML 构建的一套类库。 QML 是一种基于 JavaScript 的声明式语言。在 Qt 5 中, QML 有了长足进步,并且同 C++ 并列成为 Qt 的首选编程语言。也就是说,使用 Qt 5,我们不仅可以使用 C++ 开发 Qt 程序,而且可以使用 QML。虽然 QML 是解释型语言,性能要比 C++ 低一些,但是新版 QML 使用 V8,Qt 5.2 又引入了专为 QML 优化的 V4 引擎,使得其性能不再有明显降低。在 Nokia 发布 Qt 4.7 的时候,QML 被用于开发手机应用程序,全面支持触摸操作、流畅的动画效果等。但是在 Qt 5 中,QML 已经不仅限于开发手机应用,也可以用户开发传统的桌面程序。 QML 文档描述了一个对象树。QML 元素包含了其构造块、图形元素(矩形、图片等)和行为(例如动画、切换等)。这些 QML 元素按照一定的嵌套关系构成复杂的组件,供用户交互。 一个 QML 文档分为 import 和 declaration 两部分。前者用于引入文档中所需要的组件(有可能是类库,也可以是一个 JavaScript 文件或者另外的 QML 文件);后者用于声明本文档中的 QML 元素。 每一个 QML 有且只有一个根元素,类似于 XML 文档。这个根元素就是这个 QML 文档中定义的 QML 元素,在这个例子中就是一个 Window 对象。注意一下这个 QML 文档的具体语法,非常类似于 JSON 的定义,使用键值对的形式区分元素属性。 QML元素及常用属性。 1.Item 基础元素,是其他可视化元素的基类,定义了很多可视元素的共同属性,但是 Item本身不绘制。有必要记住以下属性: 最关键的id属性,用于标识元素。 x、y、width和height分别定义元素的左上角坐标x、左上角坐标y、宽和高。 (x,y,width,height组成一个矩形区域)。 z定义了元素的z轴方向的值,该值越大就表示元素在越上层。 anchors属性包含上、下、左、右、水平居中和垂直居中,用于定位元素与元素的位置。 scale属性用于设置元素的缩放,rotation属性用于设置元素旋转。 opacity属性定义元素的不透明度,visible属性定义元素是否可见。 2.Rectangle 矩形元素,相比Item多了边框和填充,还可以定义圆角半径。 color属性定义矩形的填充色,border.color定义边框颜色,border.width定义边框的宽度。 radius定义圆角半径。gradient可以定义渐变色。 3.Text 文本元素 和文字相关的两个关键属性,一个是文字的内容(text),另一个是字体(font)。font.family 定义字体名,font.pixelSize和font.pointSize定义字体大小,font.bold定义是否粗体。 Text元素的宽和高会根据文字的内容和字体初始化,所以通常可以不用写width和height属性。 4.Image 图像元素,可以用来显示图片。关键属性source用来设置图片的路径,fillMode定义图片 的填充模式(水平拉伸、垂直拉伸等等)。 5.MouseArea 鼠标区域,是一个不可见的元素。主要用它来捕捉鼠标事件。之前已经见过了。![QQ截图20241203150544.png](http://static.itsharecircle.com/241203/2fd35edf8a7fc5b8dc6019902222ad19.png)
126 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传