QML学习:Rectangle,Text,TextEdit,Flickable,Flipable元素
QML学习:Rectangle,Text,TextEdit,Flickable,Flipable元素
本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.
参考文档<<Qt及Qt Quick开发实战精解.pdf>>
环境:
主机:WIN7
开发环境:Qt
Rectangle元素:
代码:
import QtQuick 2.0 Item
{
Rectangle
{
color: "blue"
width: 50
height: 50
border.color: "green"
border.width: 10
radius: 20
}
}
运行效果:
说明:
border属性设置边框颜色和宽度
radius设置四角圆角的半径
Text元素:
代码:
import QtQuick 2.0 Item
{
Rectangle
{
color: "blue"
width: 50
height: 50
border.color: "green"
border.width: 10
radius: 20
} Text
{
//文本
text: "Hello JDH!"
//字体
font.family: "Helvetica"
//字大小
font.pointSize: 24
//颜色
color: "red"
}
}
运行效果:
TextEdit元素:
代码:
import QtQuick 2.0 Item
{
Rectangle
{
color: "blue"
width: 50
height: 50
border.color: "green"
border.width: 10
radius: 20
} Text
{
//文本
text: "Hello JDH!"
//字体
font.family: "Helvetica"
//字大小
font.pointSize: 24
//颜色
color: "red"
} TextEdit
{
width: 240
text: "This is TextEdit"
font.pointSize: 10
focus: true
x : 20
y : 40
}
}
运行效果:
说明:
focus属性设置焦点为输入框.
Flickable元素:
它可以将子元素设置在一个可以拖拽和弹动的界面上,使得子项目的视图可以滚动.
比如一张大图片,窗口显示不全,则可以用拖动它查看不同的部分.
代码1:
import QtQuick 2.0 Flickable
{
id: flick width: 300
height: 200
//可拖拽内容大小
contentWidth: image.width
contentHeight: image.height Image
{
id: image
source: "pics/1.jpg"
}
}
代码2:
利用clip属性,将大于Flickable窗口的部分隐藏.
图片可被拖动,用来显示未显示的部分.
import QtQuick 2.0 Rectangle
{
width: 480
height: 320
color: "blue" Flickable
{
id: flick width: 300
height: 200
//可拖拽内容大小
contentWidth: image.width
contentHeight: image.height
//隐藏大于显示窗口的部分
clip: true; Image
{
id: image
source: "pics/1.jpg"
}
}
}
运行效果:
代码3:
实现滚动条功能:
import QtQuick 2.0 Rectangle
{
width: 480
height: 320
color: "blue" Flickable
{
id: flick width: 300
height: 200
//可拖拽内容大小
contentWidth: image.width
contentHeight: image.height
//隐藏大于显示窗口的部分
clip: true; Image
{
id: image
source: "pics/1.jpg"
}
} //竖滚动条
Rectangle
{
id: scrollbar_vertical
anchors.right: flick.right
//当前可视区域的位置.为百分比值,0-1之间
y: flick.visibleArea.yPosition * flick.height
width: 10
//当前可视区域的高度比例,为百分比值,0-1之间
height: flick.visibleArea.heightRatio * flick.height
color: "black"
} //横滚动条
Rectangle
{
id: scrollbar_horizontal
anchors.bottom: flick.bottom
//当前可视区域的位置.为百分比值,0-1之间
x: flick.visibleArea.xPosition * flick.width
height: 10
//当前可视区域的宽度比例,为百分比值,0-1之间
width: flick.visibleArea.widthRatio * flick.width
color: "black"
}
}
运行效果:
Flipable元素:
可以实现翻转效果
代码:
import QtQuick 2.0 Flipable
{
id: flip width: 300
height: 200 //定义属性
property bool flipped: false //正面图片
front:Image
{
source: "pics/1.jpg"
anchors.centerIn: parent
} //背面图片
back:Image
{
source: "pics/2.jpg"
anchors.centerIn: parent
} //旋转设置,延Y轴旋转
transform: Rotation
{
id: rotation
origin.x:flip.width / 2
origin.y:flip.height / 2
axis.x: 0
axis.y: 1
axis.z: 0
angle: 0
} //状态改变
states:State
{
name: "back"
PropertyChanges
{
target: rotation;angle:180
}
when:flip.flipped
} //转换方式
transitions: Transition
{
NumberAnimation
{
target:rotation
properties: "angle"
duration:4000
}
} //鼠标区域
MouseArea
{
anchors.fill: parent
onClicked: flip.flipped = !flip.flipped
}
}
效果图:
正面: 背面:
QML学习:Rectangle,Text,TextEdit,Flickable,Flipable元素的更多相关文章
- QML学习(四)——<Text显示>
文本显示是界面开发必不可少的内容,在Qt Quick模块中提供了 Text 项目来进行文本的显示,其中可以使用 font 属性组对文本字体进行设置.这一篇我们来看看它们的具体使用. 使用字体 就像前面 ...
- qml学习笔记(二):可视化元素基类Item详解(上半场anchors等等)
原博主博客地址:http://blog.csdn.net/qq21497936本文章博客地址:http://blog.csdn.net/qq21497936/article/details/78516 ...
- qml学习:对象和属性
qml学习:对象和属性 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 参考文档<<Qt及Qt Quick开发实战精解.pdf>> ...
- QML学习笔记(六)- 简单计时器和定时器
做一个简单的qml计时器和定时器,左键触发计时,右键触发定时 GitHub:八至 作者:狐狸家的鱼 本文链接:QML学习笔记(六)- 简单计时器和定时器 左键点击按钮,触发计时器,中键可以暂停计时,同 ...
- QML学习笔记(五)— 做一个简单的待做事项列表
做一个简单的QML待做事项列表,能够动态添加和删除和编辑数据 GitHub:八至 作者:狐狸家的鱼 本文链接:QML学习笔记(五)— 做一个待做事项列表 主要用到QML:ListView 效果 全部代 ...
- 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式
本系列文章导航 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式 一.摘要 本篇文章讲解如何使用jQuery获取和操作元素的属性和CSS样式. 其中DOM属性和元素属性的区分值得 ...
- selenium webdriver学习(四)------------定位页面元素(转)
selenium webdriver学习(四)------------定位页面元素 博客分类: Selenium-webdriver seleniumwebdriver定位页面元素findElemen ...
- Knockout.Js官网学习(text绑定)
前言 text 绑定到DOM元素上,使得该元素显示的文本值为你绑定的参数.该绑定在显示<span>或者<em>上非常有用,但是你可以用在任何元素上. 简单绑定 Today's ...
- 第二十六篇 jQuery 学习8 遍历-父亲兄弟子孙元素
jQuery 学习8 遍历-父亲兄弟子孙元素 jQuery遍历,可以理解为“移动”,使用“移动”还获取其他的元素. 什么意思呢?老师举一个例子: 班上30位同学,我是新来负责教这个班学生的老师 ...
随机推荐
- 理解FTP协议
为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/ShiJiaqi. http://www.cnblogs.com/shijiaqi1066/p/5186117. ...
- python learning_curve函数
这个函数需要引用sklearn包 import sklearn from sklearn.learning_curve import learning_curve 这个函数的调用格式是: learni ...
- javascript异步加载详解(转)
本文总结一下浏览器在 javascript 的加载方式. 关键词:异步加载(async loading),延迟加载(lazy loading),延迟执行(lazy execution),async 属 ...
- .Net程序员学习Linux(三)
基础命令 ll 文件名 命令可以查看文件的大小 file 文件名 可以看到文件后缀,大小 压缩与解压工具 这些压缩工具按照我理解应该是很少单独拿出来用,应该是需要配合其他命令或者工具来使用 gzi ...
- enableEventValidation
回发或回调参数无效.在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEve ...
- [弹出消息] C#MessageBox帮助类 (转载)
点击下载 MessageBox.rar 主要功能如下所示1.显示消息提示对话框 2.控件点击 消息确认提示框 3.显示消息提示对话框,并进行页面跳转 4.输出自定义脚本信息 /// <summa ...
- struts2 标签的使用之一 s:if(遍历中s:if如何用等)
http://blog.csdn.net/chinajust/article/details/3922718
- 时间格式nls_date_format的设置
nls_date_format参数用于设置日期显示格式,设置的方式有多种,不同的方式也会带来不同的结果.参数的设置是有优先级的,日期格式的参数设置也不例外.优先级如下(低到高):初始化参数 < ...
- C++学习笔记-2-构造函数和析构函数
问题2. 什么时候执行构造函数和析构函数 22:59:40 2015-07-22 做了一个实验: #include <iostream> class Object{ public: Ob ...
- IOC容器 - Autofac概述
Autofac是比较出名的Ioc容器之一,熟悉Orchard的应该熟知.本文直接介绍autofac用法 一.开始 1.NuGet添加或者直接http://code.google.com/p/autof ...