qml保姆级教程三:输入组件

news2024/11/18 21:43:18

💂 个人主页:pp不会算法v
🤟 版权: 本文由【pp不会算法v】原创、在CSDN首发、需要转载请联系博主
💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦

QML系列教程

QML教程一:布局组件

文章目录

  • 单行输入框TextInput
    • 属性
    • 信号
    • 函数
    • 示例
  • 多行输入框 TextArea
    • 属性
    • 信号
    • 函数
    • 示例
  • 进度条ProgressBar
    • 属性
    • 示例

单行输入框TextInput

属性

属性类型说明
acceptableInputbool确定输入是否可接受
activeFocusOnPressbool按下时获得焦点
autoScrollbool自动滚动到最后
bottomPaddingreal底部填充
canPastebool 只读是否可以粘贴
canRedobool 只读是否可以重做操作
canUndobool 只读是否可以撤销操作
colorcolor文本颜色
contentHeightreal内容高度
contentWidthreal内容宽度
cursorDelegateComponent光标委托
cursorPositionint光标位置
cursorRectanglerectangle光标矩形
cursorVisiblebool光标可见性
displayTextstring显示的文本
echoModeenumeration回显模式
effectiveHorizontalAlignmentenumeration有效的水平对齐方式
font.boldbool字体加粗
font.capitalizationenumeration字体大写方式
font.familystring字体族
font.hintingPreferenceenumeration字体提示首选项
font.italicbool字体斜体
font.kerningbool字体字符间距
font.letterSpacingreal字体字符间距
font.pixelSizeint字体像素大小
font.pointSizereal字体点大小
font.preferShapingbool字体首选形状
font.strikeoutbool字体删除线
font.styleNamestring字体样式名称
font.underlinebool字体下划线
font.weightenumeration字体粗细
font.wordSpacingreal字体单词间距
horizontalAlignmentenumeration水平对齐方式
inputMaskstring输入掩码
inputMethodComposingbool输入法组合模式
inputMethodHintsenumeration输入法提示
leftPaddingreal左侧填充
lengthint文本长度
maximumLengthint最大长度
mouseSelectionModeenumeration鼠标选择模式
overwriteModebool覆盖模式
paddingreal填充
passwordCharacterstring密码字符
passwordMaskDelayint密码屏蔽延迟
persistentSelectionbool持久选择
preeditTextstring预编辑文本
readOnlybool只读属性
renderTypeenumeration渲染类型
rightPaddingreal右侧填充
selectByMousebool通过鼠标选择
selectedTextstring选定的文本
selectedTextColorcolor选定文本的颜色
selectionColorcolor选择颜色
selectionEndint选择结束位置
selectionStartint选择开始位置
textstring文本内容
topPaddingreal顶部填充
validatorValidator输入验证器
verticalAlignmentenumeration垂直对齐方式
wrapModeenumeration换行模式

信号

信号说明
accepted()调用accept()函数后触发
editingFinished()编辑完成后触发
textEdited()文本编辑时触发

函数

函数说明
clear()清空文本
copy()复制选定的文本至剪贴板
cut()剪切选定的文本至剪贴板
deselect()取消选择
ensureVisible(int position)确保指定索引位置的字符处于可见状态
string getText(int start, int end)获取指定范围内的字符串
insert(int position, string text)在指定位置插入文本
bool isRightToLeft(int start, int end)判断指定范围内的文本是否为从右到左排列
moveCursorSelection(int position, SelectionMode mode = TextInput.SelectCharacters)将光标移动到指定位置,并选择新位置与上一位置之间的字符
paste()将剪贴板的文本插入到当前编辑框中
int positionAt(real x, real y, CursorPosition position = CursorBetweenCharacters)返回包含给定屏幕坐标的文本位置
rect positionToRectangle(int pos)返回指定位置的矩形坐标
redo()重做上一次操作
remove(int start, int end)删除指定范围内的文本
select(int start, int end)选择指定范围内的文本
selectAll()选择所有文本
selectWord()选择当前光标所在位置的单词
undo()撤销上一次操作

示例

 TextInput {
            Rectangle{
                anchors.fill:parent
                border.width: 1
                border.color:"black"
                color: "transparent"

            }
            anchors.centerIn: parent
            width: 200
            height: 30
            //设置字体相关属性
            color: "black"
            font.pixelSize: 14
            font.family: "黑体"
            text: "Hello, world!" //文本内容
            selectByMouse: true //设置为可以被鼠标选中
            autoScroll:true  //自动滚动到末尾
            clip: true      //设置为可以滚动
            echoMode: TextInput.Password//设置为密码显示模式

        }

在这里插入图片描述

多行输入框 TextArea

属性

属性:

属性说明
activeFocusOnPress当按下时是获取焦点。
backgroundVisible是否可见背景。
baseUrlURL基本路径。
canPaste是否可粘贴。
canRedo是否可重做。
canUndo是否可撤销。
contentHeight内容的高度。
contentWidth内容的宽度。
cursorPosition光标的位置。
cursorRectangle光标所在矩形区域。
effectiveHorizontalAlignment水平对齐方式。
font字体。
horizontalAlignment水平对齐方式。
hoveredLink鼠标悬停的链接。
inputMethodComposing输入法是否处于组合输入状态。
inputMethodHints输入法提示。
length文本长度。
lineCount行数。
menu上下文菜单。
readOnly是否只读。
selectByKeyboard是否通过键盘选择。
selectByMouse是否通过鼠标选择。
selectedText选定的文本。
selectionEnd选择结束位置。
selectionStart选择开始位置。
tabChangesFocus制表符是否切换焦点。
text文本内容。
textColor文本颜色。
textDocument文本文档。
textFormat文本格式。
textMargin文本边缘大小。
verticalAlignment垂直对齐方式。
wrapMode自动换行方式。

信号

信号说明
editingFinished编辑完成信号。
linkActivated激活链接信号(传递链接文本作为参数)。
linkHovered鼠标悬停在链接上信号(传递链接文本作为参数)。

函数

方法说明
append(string text)在当前文本末尾追加字符串。
copy()复制选定的文本到剪贴板。
cut()剪切选定的文本到剪贴板。
deselect()取消选择状态。
getFormattedText(int start, int end)获取指定范围的格式化文本。
getText(int start, int end)获取指定范围的文本。
insert(int position, string text)在指定位置插入文本。
isRightToLeft(int start, int end)判断指定范围内的文本是否从右到左排列。
moveCursorSelection(int position, SelectionMode mode)将光标移动到指定位置并选择新位置与之间的字符。
paste()将剪贴板中的文本粘贴到当前编辑框中。
positionAt(int x, int y)获取包含给定屏幕坐标的文本位置。
positionToRectangle(position)获取指定位置的矩形坐标。
redo()重做上一次操作。
remove(int start, int end)删除指定范围内的文本。
select(int start, int end)选择指定范围的文本。
selectAll()选择全部文本。
selectWord()选择当前光标位置的单词。
undo()撤销上一次操作。

示例

 Rectangle{
        width: 300
        height: 100
        border.color: "pink"
        border.width: 2
        radius: 7
        ScrollView {
            anchors.fill:parent
            TextArea {
                anchors.fill:parent
                color: "blue"
                font.pixelSize: 14
                font.family: "宋体"
                text: "123"
                wrapMode: Text.WrapAnywhere // 设置为自动换行
                selectByMouse: true //可被鼠标选中
            }
        }
    }

在这里插入图片描述

进度条ProgressBar

属性

属性:

属性说明
hovered[只读] 指示控件是否被悬停。
indeterminate切换不确定模式。当实际进度未知时,使用此选项。进度条将被作为繁忙指示器进行动画处理。默认值为false。
maximumValue进度条的最大值。该值会被限定在此范围内。如果maximumValue比minimumValue小,则会强制使用minimumValue。默认值为1。
minimumValue进度条的最小值。该值会被限定在此范围内。默认值为0。
orientation进度条的方向。 Qt.Horizontal - 水平方向。(默认值);Qt.Vertical - 垂直方向。
value进度条的当前值。尝试将当前值更改为超出最小-最大范围的值不会对当前值产生影响。默认值为0。

示例

 Column {
        spacing: 10
        anchors.centerIn:parent
        ProgressBar {
           height: 20
           width: 100
           value: 0.5
          //注意这里使用这个Style的时候可能报错Invalid property name 这是因为版本不兼容的问题 要导入Controls 1.4
          //还要导入import QtQuick.Controls.Styles 1.4
           style:  ProgressBarStyle{
                background: Rectangle {
                  color: Qt.rgba(95, 176, 243,1)
                  border.width: 1
                  border.color: "black"
                }
           //但是要注意 这个样式会讲这个qml文件中所有的进度条的样式都设置为这样 如果只要应用到指定进度条上可以单独一个qml文件

        }
        }
        ProgressBar {
            height: 20
            width: 100
            indeterminate: true

        }
    }

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1062743.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Logrus 集成 color 库实现自定义日志颜色输出字符原理

问题背景 下列代码实现了使用 Logurs 日志框架输出日志时根据级别不同,使用对应的自定义颜色进行输出。那么思考下代码的逻辑是怎么实现的呢? 效果如下: 代码如下: import ("fmt""github.com/sirupsen/logrus&q…

python二次开发CATIA:自动出工程图

1、打开装配体Product文件 在CATIA中,装配体的结构主要通过以下三个基本元素来定义:特征、零件和产品。 特征(Feature):特征是零件上的一个几何元素。例如,一个螺栓可以被视为由螺帽、螺杆和螺纹等特征组…

学习笔记|ADC反推电源电压|扫描按键(长按循环触发)|课设级实战练习|STC32G单片机视频开发教程(冲哥)|第十八集:ADC实战

文章目录 1.ADC反推电源电压测出Vref引脚电压的意义?手册示例代码分析复写手册代码Tips:乘除法与移位关系为什么4096后面还有L 2.ADC扫描按键(长按循环触发)长按触发的实现 3.实战小练1.初始状态显示 00 - 00 - 00,分别作为时,分&#xff0c…

S5PV210裸机(三):串口

本文主要探讨210串口相关知识。 同步通信和异步通信 发送和接收方同时钟工作叫同步,否则叫异步 同步通信频率固定,双方通信频率不固定,,接收方收到起始信号开始接收信息 电平信号和差分信号 电平信号和差分信号是描述通信线路传输方式 电平信…

长剖与贪心+树上反悔贪心:1004T4

长剖的本质是一种贪心。(启发式合并本质也是类似哈夫曼树的过程) 在此题中,首先肯定变直径,然后选端点为根。然后选叶子。而每个叶子为了不重复计算,可以只计算其长剖后所在链的贡献。(本题精髓&#xff0…

Postman使用实例

Postman使用实例 实体类Emp package com.example.springboot_postman.pojo;import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;import javax.persistence.*; import j…

【C语言】善于利用指针(一)

💗个人主页💗 ⭐个人专栏——C语言初步学习⭐ 💫点击关注🤩一起学习C语言💯💫 目录 导读: 1. 什么是指针 1.1 概念 1.2 图解 1.3 示例 2. 指针和指针类型 2.1 指针的定义 2.2 指针的解引…

Kubernetes Deployment的运行

Deployment提供了一种更加简单的更新Replication Controller和Pod的机制,更好地解决了Pod的编排问题。本节将详细介绍如何通过Deployment实现Pod的管理。 15.1.1 什么是Deployment Deployment的中文意思为部署、调集,它是在Kubernetes的1.2版本中新增…

【kubernetes】基于prometheus的监控

目录 1 监控解决方案2 prometheus2.1 容器监控2.2 节点监控2.3 资源对象监控2.4 metrics--server 3 prometheus-operator vs kube-prometheus vs helm3.1 prometheus-operator3.2 kube-prometheus3.3 helm 参考文档 1 监控解决方案 从实现方案来说,监控分为3个部分…

计算机网络基础(二):物理层、数据链路层及网络层

一、物理层 1.物理层 物理层面的通信标准可以概括划分为与网络基础设施有关的标准和与被传输物理信号有关的标准两类。 网络基础设施的标准:鉴于物理层面的消息互通也是物理层应该兑现的服务,因此物理层的标准还会包括针脚的用途、线缆的材料与设计等…

vertx的学习总结7之用kotlin 与vertx搞一个简单的http

这里我就简单的聊几句&#xff0c;如何用vertx web来搞一个web项目的 1、首先先引入几个依赖&#xff0c;这里我就用maven了&#xff0c;这个是kotlinvertx web <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apac…

华为云云耀云服务器L实例评测|基于canal缓存自动更新流程 SpringBoot项目应用案例和源码

前言 最近华为云云耀云服务器L实例上新&#xff0c;也搞了一台来玩&#xff0c;期间遇到各种问题&#xff0c;在解决问题的过程中学到不少和运维相关的知识。 在之前的博客中&#xff0c;介绍过canal的安装和配置&#xff0c;参考博客 拉取创建canal镜像配置相关参数 & …

【数据库——MySQL】(14)过程式对象程序设计——游标、触发器

目录 1. 游标1.1 声明游标1.2 打开游标1.3 读取游标1.4 关闭游标1.5 游标示例 2. 触发器2.1 创建触发器2.2 修改触发器2.3 删除触发器2.4 触发器类型2.5 触发器示例 参考书籍 1. 游标 游标一般和存储过程一起配合使用。 1.1 声明游标 要使用游标&#xff0c;需要用到 DECLAR…

<C++> String

目录 一、标准库中的string类 1. string类 2. string类的常用接口说明 2.1 string类对象的常见构造 2.2 string类对象的容量操作 2.3 string类对象的访问及遍历操作 2.4 string类对象的修改操作 2.5 string类非成员函数 总结 前言 C语言中&#xff0c;字符串是以 \0 结尾的一些…

用JMeter对HTTP接口进行压测(一)压测脚本的书写、调试思路

文章目录 安装JMeter和Groovy为什么选择Groovy&#xff1f; 压测需求以及思路准备JMeter脚本以及脚本正确性验证使用Test Script Recorder来获取整条业务线上涉及的接口为什么使用Test Script Recorder&#xff1f; 配置Test Script Recorder对接口进行动态化处理处理全局变量以…

2. 资源管理

2. 资源管理 文章目录 2. 资源管理2.1 资源管理介绍2.2 YAML语言介绍2.3 资源管理方式2.2.1 命令式对象管理2.2.2 命令式对象配置2.2.3 声明式对象配置 2.4. 模拟使用普通用户来操作 2.1 资源管理介绍 在kubernetes中&#xff0c;所有的内容都抽象为资源&#xff0c;用户需要通…

二十九、【进阶】MySQL索引的概述和索引查询

1、索引概述 2、 普通查询和索引查询 &#xff08;1&#xff09;基础演示 无索引查询&#xff1a;在查询信息时&#xff0c;比如查询年龄age45的员工&#xff0c;系统会遍历字段为age的列&#xff0c;在找到age45的员工后&#xff0c;依旧会向下扫描&#xff0c;直到表末&…

如何使用 Dijkstra 算法找到从源到所有顶点的最短路径--附C++/Java源码

给定一个图和图中的源顶点,找到从源到给定图中所有顶点的最短路径。 例子: 输入: src = 0,图形如下图所示。 输出: 0 4 12 19 21 11 9 8 14解释:从 0 到 1 的距离 = 4。 从 0 到 2 的最小距离 = 12。0->1->2 从 0 到 3 的最小距离 = 19。0 ->1-

Python基础语法(3)

目录 一、函数 1.1 函数是什么 1.2 函数语法格式 1.3 函数参数 1.4 函数返回值 a. 一个函数中可以有多个 return 语句 b. 执行到 return 语句&#xff0c;函数就会立即执行结束&#xff0c;回到调用位置 c. 一个函数是可以一次返回多个返回值的。使用 , 来分割多个返回值…

Jmeter基础篇

1.性能测试指标 【虚拟用户数】&#xff1a;线程用户 【并发数】&#xff1a;指在某一时间&#xff0c;一定数量的虚拟用户同时对系统的某个功能进行交互&#xff0c;一般通过集合点实现 【事务】:事务代表一个完整的功能&#xff0c;一个接口可以是事务&#xff0c;多个接口…