QLineEdit 信号小剖析

QLineEdit 类代表编程框,它可以让用户输入一个单行文本。

构造

QLineEdit 类支持以下构造函数:

[plain] view plaincopy

  1. QLineEdit (QWidget *parent = 0);
  2. QLineEdit(const QString &contents, QWidget *parent = 0);

其中 contents 表示编辑框中显示的内容。

属性

alignment 属性表示显示文本的对齐方式,相关成员函数如下:

[plain] view plaincopy

  1. int maxLength() const;                                    // 获取最大输入长度
  2. void setMaxLength(Qt::Alignment flag) const;      // 设置对齐方式

它的含义与 QLabel 类的 alignment 属性相同。

maxLength 属性表示编辑框可以容许的最大输入长度,相关成员函数如下:

[plain] view plaincopy

  1. int maxLength() const;                                   // 获取最大输入长度
  2. void setMaxLength(int len);                            // 设置最大输入长度

readOnly 属性表示编辑框的内容是否为只读的,即内容是否可以被用户修改,相关成员函数如下:

[plain] view plaincopy

  1. bool isReadOnly() const;                               // 判断是否为只读的
  2. void setReadOnly(bool on);                             // 判断是否为只读的

text 属性表示编辑框的内容,相关的成员函数如下:

[plain] view plaincopy

  1. QString text() const;                                    // 获取编辑框的内容
  2. void setText(const QString &text);                 // 设置编辑框的内容,这是一个槽

其中 setText 函数同时也是一个槽。要注意编辑框的内容不一定就是编辑框显示的内容,比如一个密码输入编辑框,用户输入的密码是不显示出来的。如果要得到编辑框的内容,则需使用下民的成员函数:

[plain] view plaincopy

  1. QString displayText() const;    // 得到显示的内容

frame 属性控制编辑框有没有边框,相关成员函数如下:

[plain] view plaincopy

  1. bool hasFrame() const;    // 判断有没有边框
  2. void setFrame(bool on);   // 设置有没有边框

下面两个成员函数虽然不是属性,但也与文本的显示有关:

[plain] view plaincopy

  1. void setTextMargins(int left, int top, int right,int bottom);    // 设置边距
  2. void getTextMargins(int *left, int *top, int *right, int *botton);     // 获取边距

这两个函数分别用于设置和获取文本显示的边距,上、下、左、右 4 个边距可以独立进行设置。

信号

当编辑框的内容发生变化时,将发射以下信号:

[plain] view plaincopy

  1. void textChanged(const QString &text);

其中参数 text 是发生变化后的内容。

当编辑框的内容被编辑时,将发射以下信号:

[plain] view plaincopy

  1. void textEdited(const QString &text);

其中参数 text 是编辑后的内容。它与 textChanged 信号的主要区别在于,它只是在用户进行修改的时候发射,在程序中用 setText 修改时则不发射,而后者则在两种情况下都会发射。

当在编辑框中按下回车键时,将发射以下信号:

[plain] view plaincopy

  1. void returnPressed();

这个信号将在按下回车键或者编辑框失去焦点时发射。

调用下面的槽可以清空编辑框中的内容:

[plain] view plaincopy

    1. void clear();
时间: 2024-10-08 09:16:17

QLineEdit 信号小剖析的相关文章

QLineEdit使用正则表达式小剖析

1.使用正则表达式检验QLineEdit的输入范围(代码如下): #include <qvalidator.h> #include <qlineedit.h> QLineEdit *lineEdit = new QLineEdit(this); QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}");   //^[1-9][0-9]*$ 和 ^[1-9]{1}[/d]*$ //上面的正则表达式表示只能输入大于0的正整数 lineEdi

浅析vanish

浅析 VANISH --一种cache 第一部分:理解vanish的准备工作 1.对CDN的小剖析 CDN  content  delivery  network  内容分发(推送)网络,是在现有的Internet中增加一层新的网络架构,将网络内容发布到最接近用户的网络边缘(边缘服务器),使用户最近取得所需内容,解决网络拥挤状态,提高用户访问网站的速度. CDN网络架构主要有两部分组成,中心和边缘两部分,中心指CDN网管中心和DNS重定向解析中心,负责全局负载均衡.边缘主要指异地节点,CDN分发

心电信号检测电路设计与制作

电信号检测电路设计与制作 摘要:本文通过三导联采集人体的心电信号,依次通过前置放大.高通滤波.50HZ陷波.主放大和低通滤波电路,得到可以在示波器上较清楚显示的心电图.其中,第一级前置放大是CMRR很大的差动放大器,此处采用仪用放大器AD620,放大倍数固定为10的电路:第二级是二阶有源高通滤波器电路,所设计的截止频率为0.05Hz:第三级是50hz陷波电路,能有效去除50HZ工频干拢:第四级是主放大,放大倍数为100倍,采用TL084:第五级为低通滤波器电路,所设计的截止频率为100Hz.该电

单片微机原理P3:80C51外部拓展系统

外部拓展其实是个相对来说很好玩的章节,可以真正开始用单片机写程序了,比较重要的是外部存储器拓展,81C55拓展,矩阵键盘,动态显示,DAC和ADC. 0. IO接口电路概念与存储器拓展 1. 为什么需要IO电路?:1. 协调计算机与外设的速度的差异 2. 输入/输出过程中的状态信号 3. 解决计算机信号与外设信号之间不一致 2. IO传送方式三种:1. 无条件传送(灯,DAC),2. 查询,3. 中断(ADC). 3. DMA存储方式(直接传输数据不通过CPU(不需要CPU),这种方式实际上已经

qt——常用的布局方法

布局相关对象及简介 窗体上的所有的控件必须有一个合适的尺寸和位置.Qt提供了一些类负责排列窗体上的控件,主要有:QHBoxLayout,QVBoxLayout,QGridLayout,QStackLayout.(布局管理类)这些类简单易用,无论在代码中还是用Qt Designer开发程序都能用到. 1)         布局类简介 QHBoxLayout:水平布局 QVBoxLayout:垂直布局 QGridLayout: 表格布局 QGridLayout::addWidget()语法 layo

MP3的频率、比特率、码率与音质的关系

想知道MP3的频率.比特率.码率与音质的关系,是不是频率越高,码率越高,音质就越好.好像MP3大多数的频率都是44100HZ的.码率有128,192等等. 这里所说的频率是採样率,一般都是44100KHz的,由于这是音乐CD的标准.每一首歌,都是从CD抓轨.转成WAV文件.再用Lame等软件转为MP3的.所以肯定都是44100KHz的採样率.除非你的不是歌,而是自己录音成为WAV文件,并且录音时选了其它的採样率.影响MP3音质的主要是码率.如今最好的是320K的CBR(固定码率)和VBR(可变码

自适应滤波:最小均方误差滤波器(LMS、NLMS)

作者:桂. 时间:2017-04-02  08:08:31 链接:http://www.cnblogs.com/xingshansi/p/6658203.html 声明:欢迎被转载,不过记得注明出处哦~ [读书笔记08] 前言 西蒙.赫金的<自适应滤波器原理>第四版第五.六章:最小均方自适应滤波器(LMS,Least Mean Square)以及归一化最小均方自适应滤波器(NLMS,Normalized Least Mean Square).全文包括: 1)LMS与维纳滤波器(Wiener F

matlab学习之降噪平滑算法

平滑降噪测试,代码如下 % 平滑降噪 % FFT变换和小波变换 clc clf clear length_of_sig=128; x=linspace(0,2*pi,length_of_sig); % signal=5*sin(x)+2*sin(5*x)+randn(x);书上的这个是错的,随机数里的参数要求是整数 raw=5*sin(x)+2*sin(5*x); signal=5*sin(x)+2*sin(5*x)+randn(1,length_of_sig); jiequ=16; trans

基于无线信号的手势识别研究现状调查

摘要:进入21世纪以来,人机交互技术持续发展,手势识别是代表之一.2013年,华盛顿大学的研究人员提出了使用无线信号进行手势识别的方法,给传统的手势识别技术带来的一定的挑战,但是这一技术并不是很成熟,暂时没有投入商业使用.本文详细介绍了手势识别,并叙述了基于无线射频的手势识别的研究现状. 关键词:无线信号.手势识别.人机交互 一.背景 进入二十一世纪以来,随着世界科技持续不断的进步以及计算机突飞猛进的发展和普及,人机交互技术(Human-Computer Interaction,简称HCI)在世