QT第一周知识点整理

Application类的定义,在每一个使用QT图形化应用程序中都必须使用一个QApplication对象。它管理了各种各样的图形化应用程序的广泛资源,基本设置,控制流及事件处理等。

#include
QGridLayout *mainLayout =new QGridLayout(this) 用于布局管理器,将所有控件的位置固定
创建一个网格布局管理器对象mainLayout,并用this指出父窗口。
mainLayout->addWidget(…):分别将控件对象:label、lineEdit等放置在该管理器中。
例:mainLayout->addWidget(label1,0,0);

槽与信号的连接(signal&slot):
在头文件里要加:Q_OBJECT
信号:在某个特定情况被触发
槽:等同于接收并处理信号的函数
1.一个信号可以与另一个信号相连——
connect(object1,SIGNAL(signal1),object2,SIGNAL(signal1));
2.同一个信号可以与多个槽相连——
connect(object1,SIGNAL(signal2),object2,SIGNAL(slot2));
connect(object1,SIGNAL(signal2),object3,SIGNAL(slot1));
3.同一个槽可以响应多个信号
connect(object1,SIGNAL(signal2),object2,SIGNAL(slot2));
connect(object3,SIGNAL(signal2),object2,SIGNAL(slot2));
4.但是常用的连接方式(一个信号与一个槽):
connect(object1,SIGNAL(signal),object2,SIGNAL(slot));
也等于:connect(object1,“signal”,this,“slot”);
信号(参数类型)=槽(参数类型)、信号(参数个数)>=槽(参数个数) 只能缺少后几个
connect(List,SIGNAL(currentRowChanged(int)),stack,SLOT(setCurrentlndex(int))):
SIGNAL:发射信号的一方
SLOT:接收信号的一方

connect(button1,SIGNAL(clicked()),this,SLOT(showTime())); //确定——clicked():点击按钮的点击事件
connect(button2,&QPushButton::clicked,this,&Dialog::close); //退出 也可以写个槽函数,在槽函数里写close()

connect(button3,SIGNAL(clicked()),this,SLOT(clear())); //重置

QString强制转换成Int型
bool ok;
QString a=lineEdit->text();
int c=a.toInt(&ok);

/伙伴编辑模式一掠而过/

/操作字符串
Qstring类

<组合字符串>将一个字符追加到另一个字符串的末尾
(1)“+”:
QString a=“2”;
a=a+“3” //a=“23”
(2)append
QString a=“2”;
QString b=“3”;
a.append(b); //a=“23”
a.append(“44”); //a=“2344”
(3)QString::sprintf()
QString a;
a.sprintf("%s",“23”); //a=“23”
a.sprintf("%s %s",“23”,“44”); //a=“23 44”
(4)QString::arg() 函数重载 允许改变“%n”参数的顺序
QString a;
a=QString("%1 was born in %2.").arg(“jhon”).arg(1987); //a=“jhon was born in 1987.”
%1——jhon、%2——1987

(5)其他组合字符串的方法
1.insert()函数:在原字符串特定位置插入另一个字符串。
2.prepend()函数:在原字符串的开头插入另一个字符串。
3.replace()函数,用指定的字符串代替原字符串中的某些字符。

(6)去掉一个字符串两端的空白(空白包括:\n、\r、\t、" ")
①:QString::trimmed()函数:移除字符串两端的空白字符
②:QString::simplified()函数:移除字符串两端的空白字符,使用单个字符“ ”代替字符串中出现的空白字符

容器类:

存储在Qt容器中的数据必须是可赋值的数据类型,这种数据类型必须提供一个默认的构造函数(不需要参数的构造函数)、一个赋值构造函数和一个赋值操作运算符。

QT的容器类为遍历其中的内容,提供了迭代器

(容器)QList类
——继承QList类的子类有 QItemSelection,QQueue,QSignalSpy,QStringList,QTextEventList
容器类,存储给定数据类型T的一列数值
QList维护了一个指针数组,该数组存储的指针指向QList存储的列表项的内容,因此,QList提供了基于下标的快速访问。

QList只读遍历法
#include
int main(int argc,char *argv[ ])
{
QListlist; //创建一个空的列表list
list<<1<<2<<3<<4<<5; //利用操作运算符“<<”输入五个整数值
QListIterator i(list); //以该list为参数初始化一个QListIterator对象i{此时,迭代点处在第一个列表项1的前面,并不指向该列表}
for(;i.hasNext()? //调用QListIterator::hasNext()函数检查当前迭代点之后是否有列表项。如果有,则调用QListIterator::next()函数进行遍历。next()函数将会跳过下一个列表项,(即迭代点将位于第一个列表项和第二个列表项之间),并返回它跳过的列表项的内容。
qDebug()<<i.next(); //一个个输出
return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值