TextEdit显示一个可编辑的,有格式的文本框。它也可以显示明文和富文本。例如:
TextEdit {
    width: 240
    text: "<b>Hello</b> <i>World!</i>"
    font.family: "Helvetica"
    font.pointSize: 20
    color: "blue"
    focus: true
}

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAAArCAIAAADJzpIpAAAACXBIWXMAAA7EAAAOxAGVKw4bAAADxUlEQVR4nO2cbY6cMAyGQ9UbZc4EZ4IzhTOlPzI1xnbMx2S1mvA+QlUXgjHDgwec1Q455wBAL/z57QQAaAmEBl0BoUFX7IQeht9KA4A2oEKDroDQoCsgNOgKCA26AkKDroDQoCuk0MOwLSaHAw4xI3we1mdZ3sHX1di6ru+t02Tv/nq1z62k9HqdHT9NMsOS1bK0zOrbQYUOIRw4sa7v22CeWx60xIzx/virEZ7AU4R2rvq6bkKb9Zu2jmPLlD4UmlKF0JynCO1wWJ7LgLY2h4tCa31Rnk0eJ7SoweRr7XHiR8tzuCg0H/xDt9m301LodQ3TtL0/vV7Vd6zPw5rPBjcgLYorOqwY4GSlK3157SsfwrK8B5dDOPWVRvKweIA+S2aEsFtMagNSkrvTktJxhFrYcayGHUc7QxNKb56NlSlt/+fMs30KtaxiNIbNc45Rnl3ZJE4hpd1IWigCJW9mC3LOntCHCyFsjlFeGC7EeaEdm284rYUu8YuFpiLlLExNy9HLeaW0reTxaffy7zhuW4WgYvw8v+8xuqPEx1jWi8RAbiU0N0986Nq8k0KLm4Sufe0aH5+qEk5EED/y+k3Uanbe3x7ipIS4+ljm7vp8xeBL9/NDaCN0rWRy0c2jOCv5vk7Y8xdVuFXzjyQzy7NZWQuixtOPOkP9bWDePCIxnomTxsNp8AzNS6m4Hry6iEJ4KDR/aBFh+RHPf+0KoXVkPsB55q4dUWhK567RDwx+xdWZlA8HaP5+/lrJOwPORO66Xnsl52HFjvpl/yql8xDjLlSMW7TSW4hx1xejlQ6iT2y21e61LMR49DdMHtSH5o05v/ccKl1ex9GgdHccvSR0rWONDrRJgwrNSam66WpF4fVSFCSneJ+BzKsJRPXbFLqG0P280P4ki/5aQAfaoUGF1l+FfGkSVsxZ8B9vHKL4qsszhboxCbcs27kH19FLc4Q0kanLM4S24Q/U914KM3uBi3HX9tITCrUI/rtmaNG248mYL3ai7V2L4HQtRJLOUcQm/donckZD4yRthBaS6YkV3f09Y3nbiRUezfSj1jjXEcwpFb6L07VwplTKeppSMfs85YjoQNdoNvUtnK7ZXItQC9tq6puHqvXdzCkMgTk1rZNxbhvzi6X2iwO694c5Qp9mQuf/xYM/flAlO4zwedhDzNlpDtnj3yq8dprJOL9o4W8SYfP1jjUYMvvro8MQ8LdIwVfzoD40eAIQGnQFhAZdAaFBV0Bo0BUQGnQFhAZdsRMaTWjw7aBCg66A0KArIDToCggNuuIfk0Ft/KcBUTYAAAAASUVORK5CYII=" alt="" />

设置focus为真 来使得TextEdit接受键盘焦点。
注意:文本编辑框没有实现滚动操作,光标操作,以及其他的一些针对特定于感官等的行为。例如添加flickable 滚动去跟随光标:
Flickable {
id: flick width: 300; height: 200;
contentWidth: edit.paintedWidth
contentHeight: edit.paintedHeight
clip: true function ensureVisible(r)
{
if (contentX >= r.x)
contentX = r.x;
else if (contentX+width <= r.x+r.width)
contentX = r.x+r.width-width;
if (contentY >= r.y)
contentY = r.y;
else if (contentY+height <= r.y+r.height)
contentY = r.y+r.height-height;
} TextEdit {
id: edit
width: flick.width
height: flick.height
focus: true
wrapMode: TextEdit.Wrap
onCursorRectangleChanged: flick.ensureVisible(cursorRectangle)
}
}
一个特别的感官可能使用平滑的滚动(例如使用SmoothedAnimation),可能又一个可以看得见的滚动条,或者是一个淡出到显示位置的滚动条,等等。
剪贴板支持 可以提供cut(),copy(),paste()函数,selection可以依靠设置selectByMouse去在传统的鼠标机制中处理各类信息。通过设置起始位置与终止位置来实现完整的处理,或者用selectAll()或者selectWord();
你可以通过positionAt()和positionToREctangle()在光标位置和像素点之间进行转换。
具体详见 Text and TextInput.; 属性文档:
activeFocusOnPress : bool
TextEdit是否应该在鼠标下压时添加激活焦点事件。默认该设置为真。 baseUrl : url
这个属性制定了一个文本text中基本的被用来解决相关textURL。
默认值是QML实例化的TextEdit项目的url。 canPaste : bool
如果TextEdit是可写的并且剪贴板的内容是合适的去张贴到TextEdit中时,返回真。 canRedo : bool
如果TextEdit使可以编辑的并且这里确实可以允许重做操作时,返回真值。 canUndo : bool
如果TextEdit是可以编辑的并且拥有钱一个操作去允许被撤消操作时,返回真值。 color : color
文本颜色。
// green text using hexadecimal notation
TextEdit { color: "#00FF00" }
// steelblue text using SVG color name
TextEdit { color: "steelblue" } contentHeight : real
返回文本的高度,包括那些因为文本没有适合设置的高度而被覆盖了的高度值。 contentWidth : real
返回文本的宽度,包括那些过去由于不充分环绕,且wrapMode已经被设置好的,而覆盖的高度。 cursorDelegate : Component
编辑文本框中的光标代理。
如果为一个文本编辑框设置了cursorDelegate,这个代理将被用作绘制一个新光标来替代标准的光标。当需要一个光标时,委托的一个实例将被创建并且通过文本编辑器来进行管理,该代理的属性X和Y将被设置并作为当前字符左上角的一个像素。
注意:代理组件的根项目一定是一个QQuickItem 或者 QQuickItem 设备项目。 cursorPosition : int
光标在文本编辑的位置 cursorRectangle:rectangle

QML之TextEdit的更多相关文章

  1. Qt 5入门指南之Qt Quick编程示例

    编程示例 使用Qt创建应用程序是十分简单的.考虑到你的使用习惯,我们编写了两套教程来实现两个相似的应用程序,但是使用了 不同的方法.在开始之前,请确保你已经下载了QtSDK的商业版本或者开源版本,并且 ...

  2. QML学习:Rectangle,Text,TextEdit,Flickable,Flipable元素

    QML学习:Rectangle,Text,TextEdit,Flickable,Flipable元素 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 参 ...

  3. qml基础学习 基础概念

    一.概括 学习qt已有2年多的时间,从qt4.7开始使用直到现在正在使用的qt5.6,基本都在windows机器上做开发.最近有意向看了下qt的qml部分,觉着还是挺不错的,毕竟可以做嵌入式移动端产品 ...

  4. QML学习笔记(五)— 做一个简单的待做事项列表

    做一个简单的QML待做事项列表,能够动态添加和删除和编辑数据 GitHub:八至 作者:狐狸家的鱼 本文链接:QML学习笔记(五)— 做一个待做事项列表 主要用到QML:ListView 效果 全部代 ...

  5. QML 从入门到放弃 第二卷

    第二卷如何更快速的放弃,注重的是C++和QML的交互 <1>记事本.. (1) 先测试下不在QML创建C++对象,仅仅在main.cpp添加一个属性函数供调用. 注意只使用槽函数来做到. ...

  6. QML 从入门到放弃

    发现了一个问题: QQuickView only supports loading of root objects that derive from QQuickItem. If your examp ...

  7. QML C++插件dll引用

    插件的创建非常简单,但是它可以复用,并且为不同的应用程序扩展类型.使用创建的插件是非常灵活的解决方案.关于插件一个很好的例子见QmlBook-In-Chinese 中最后一章介绍的例子. 本文主要备忘 ...

  8. QML常用控件

    这里的控件是显示的元素 1.Item:一切的基类 Item { Image { source: "tile.png" } Image { x: width: height: sou ...

  9. QT之QML控件篇

    QT quick中提供了很多的实用控件widget,下面介绍几种常用的. 这部分介绍基本是参照QtCretator提供的帮助文档,一定要学会使用,不明白的去查找帮助. Item 基本上所有的可是控件的 ...

随机推荐

  1. JAVA命名、注释规范

    一.命名规范 1. 项目名全部小写 2. 包名全部小写(除非部分是缩写) 3. 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写. 如:public class MyFirstClas ...

  2. lcx源代码以及免杀的研究

    之前和Random大神讨论了一下免杀的问题,他给出了一个比较不错的想法,使用debug版本发布可以过很多杀软.顺便看了下lcx的源码,发现其代码不算特别复杂,于是乎就在这分析一下. 报毒情况 因为使用 ...

  3. Windows与Linux下文件操作监控的实现

    一.需求分析: 随着渲染业务的不断进行,数据传输渐渐成为影响业务时间最大的因素.究其原因就是因为数据传输耗费较长的时间.于是,依托于渲染业务的网盘开发逐渐成为迫切需要解决的需求.该网盘的实现和当前市场 ...

  4. Reactor构架模式--转载

    原文:http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece76310468a3b404380143c86964868d4e419ce3b464 ...

  5. 分分钟解决iOS开发中App启动广告的功能

    前不久有朋友需要一个启动广告的功能,我说网上有挺多的,他说,看的不是很理想.想让我写一个,于是乎,抽空写了一个,代码通俗易懂,简单的封装了一下,各种事件用block回调的,有俩种样式的广告,一种是全屏 ...

  6. BeanUtils使用概要

    BeanUtils是apache提供的的一个工具类,在很多地方我们都要用到这个类.下面说说这个类的简单用法. 相关的使用细节已经在代码的注释中说明了. @Test public void test5( ...

  7. 升级mac的java版本

    在OS X EI Capitan下, java版本太低,从oracle官网下载的dmg文件升级一直有问题, 我发现mac下的java环境有三处 #这应该是系统自带java环境,默认/usr/bin/j ...

  8. ubuntu下创建c语言程序之hello world

    将要学习c语言了,先记录一下在ubuntu下,使用vim创建一个最基本的hello world程序: 打开终端,使用cd命令转到操作的目录,如我在home下的program files文件内创建, 就 ...

  9. <script runat=server>、<%%>和<%#%>的区别

    ①<script runat="server">代码段与<%%>内联代码段的区别 在asp.net页面的aspx文件中允许使用<script runa ...

  10. troubleshooting ORA-600[6302] & ORA-600 [6200] corrupted index block

    今天同事的一套数据库遇到了alert 日志 一堆的ora-600,这是一套10.2.0.5 db 2nodes RAC on AIX , 找我帮着看看, 最终确认为一个索引出现了block corru ...