文章来源:http://www.csdn123.com/html/itweb/20130909/108105_108098_108101.htm
Qt初级-Qt格式(一)
主函数:
#include <QAppplication>
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
..........
return app.exec();
}
QCore include:
QString //Qt类型字符串
QChar //Qt类型字符
QStringList //Qt类型字符串列表
QVariant //Qt类型类似union
QList //Qt类型模板类列表
QDataStream out(&file); //提供有顺序的二进制数据给QIODevice;
QRegExp //提供使用正则表达式的模式匹配
QSettings settings("Software Inc","Spreadsheet");//提供永久与平台无关的设置信息保存和输出
QFile //为读取和写入文件提供接口
QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}"); //正则表达式
QRegExpValidator *regexp=new QRegExpValidator(regExp(正则规则对象),this); //精确匹配
QFileInfo("fullname") //提供独立于系统的信息,比如文件路径
QMutableStringListIterator i(QStringList); //适用于QStringList的java风格迭代器;
QGui include:
QCloseEvent //包括描述关闭事件的参数
QMutableStringListIterator //提供一个java风格的迭代器
QTableWidgetSelectionRange //提供不用索引的选择模型
QLabel //一个标签
QToolBar //一个工具栏
QPushButton //一个命令按钮
QWidget //一个可以实现所有窗体的类,所有窗体的基类
QSpinBox //一个数字下拉菜单
QSlider *slider=new QSlider(Qt::Horizontal 或者 Qt::Vertical); //一个滑动器
QCheckBox //一个多选框
QLineEdit //一个文本输入框
QGroupBox //一个组件组合框架
QComboBox //一个标签和一个下拉菜单
QAction //一个菜单中的选项
QHeaderView //表格的行头和列头
QMenu *fileMenu=menuBar()->addMenu(tr("&File")); //一个菜单
QTableWidget //一个二维表
QTableWidgetItem //一个表格的单元
QTableWidgetSelectionRange //二维表中的选择范围
MainWindow //一个主窗体
QSpacerItem *verticalSpacer = new QSpacerItem(20,0,QSizePolicy::Minimum,
QSizePolicy::Expanding); //一个空白空间
QIcon(""); //图标;
信号和槽的链接:
自定义槽和信号格式private/public slot:/signals:
关于信号和槽:当部件1的信号函数被触发将消息传给部件2的槽函数,从而完成一些特定的功能
一个信号可以连接多个槽;多个信号可以连接一个槽,一个信号可以和另外一个信号相连;连接可被移除
connect(部件1,SIGNAL(部件1的信号函数),部件2,SLOT(部件2的槽函数));
窗体布局:
QHBoxLayout *topLeftLayout=new QHBoxLayout; //提供水平布局
QVBoxLayout *LeftLayoout=new QVBoxLayout; //提供垂直布局
QGridLayout *Layout=new QGridLayout; //提供网格布局
Qt初级-成员函数(一)
成员函数:
show(); //基类为QWidget的派生类都有---弹出窗体
exec(); //QApplication class;QCoreApplication class;---进入事件循环,等待exit();
//QDialog class;QMessageBox class----使用模态弹出窗口
// QMenu class;----实施菜单同步
setRange(0,130); //QSpinBox class; QAbstractSlider class 派生的QSlider;---设置滑块和数字设定框的上下限;
//==setMinimum(minimum);setMaximum(maximum);
setValue(x); //QSpinBox class; QAbstractSlider class;---设置当前的值
setValue(x); //QVariant class;---给QVariant类型赋值;
setValue("设置名",值); //QSettings class;---将设置保存的时候的保存的赋值;
setLayout(layout); //基类为QWidget的派生类都有---设置窗口布局
setBuddy(button or label);//QLabel class; ----设置绑定伙伴
setDefault(true or false);//QPushButton class; ---设置默认按钮,当Enter按下时执行;
setEnabled(false or true);//QAction class;QWidget class ;>QAbstractButtonclass>QPushButton
//---设置部件是否被激活
//QShortcut class;同上
//QLayout class;==isEnabled()---当布局被激活时返回true;
addWidget(widget);//QBoxLayout class;QGridLayout class(格式见下);
//QToolBar class;---添加一个窗体在布局管理器中或者在工具栏
addLayout(layout)//QBoxLayout class---添加一个布局管理器在另外一个布局管理器的最后
addLayout(layout,row,column,x,y)//QGridLayout class---添加布局管理器在网格布局器中
//row和column表示在第几行第几列,x表示占几列,y表示占几行
addStretch();//QBoxLayout class;---添加一个空白的伸缩器在布局管理器中;
setWindowTitle(tr(""));// 基类为QWidget的派生类都有 --设置窗体的标题;
setFixedHeight(QSize);//基类为QWidget的派生类都有---设置窗体高度;
sizeHint()//基类为QWidget的派生类都有---返回一个默认的窗体大小,可以和 setFixedHeight配合使用;//sizeHint().height()
text() //QAction class;QLineEdit class;QLabel class;QClipboard class;QAbstractSpinBox class;---设置组件的文本内容,返回Qstring
isChecked()//QAbstractButton class;QAction class;QGroupBox class;---检查复选组件是否被选中,返回bool值==setChecked();
setValidator(精确输入)//QLineEdit class;---接受有规则的文本;
//精确输入:抽象类class QValidator派生出的QIntValidator和QDoubleValidator提供简单的数字检。
//QRegExpValidator提供正则检查;
//QComboBox class---设置验证程序来代替目前的验证程序。
hasAcceptableInput();//QLineEdit class;---检测文本框是否有文本输入(text())或者精确匹配式的输入( setValidator());
button(QDialogButtonBox::ok) //QButtonGroup class--选择buttonBox中的预置键;
buttonClicked(QDialogButtonBox::ok)//QButtonGroup class--当预置按钮被单击;
objectName() //QObject class;---一个Qt对象的名称,返回QString;
isEmpty() //QLayout class;QItemSelectionRange class;QMenu class;QRegExp class;QSize class;Qstring class;
//---检测其中包含的项目或者文本是否为空;
setObjectName();//QObject class;---设置Qt对象的名称;
resize(int w,int h );//QWidget class;---设置框体的大小;
resize(int x ) //QString class;---设置Qt类型字符串的大小,具有截断字符串的功能;
//QFile class;--设置文件的大小(bytes),类似QString;
setGeometry(int,int,int,int)//QWidget class--在窗体中划分出一个矩形;
setGeometry(Rect(int,int,int,int))//QWidget class--同上;
setContentsMargins(int,int,int,int)//QWidget class;QLayout class---设置框体四边的边缘的厚度
setStandardButtons();//QButtonBox class,QMessageBox class;---设置标准按钮;
connectSlotsByName(widget);//QMetaObject class---使用名字命名规则来链接信号和槽;
translate()//QCoreApplication class;---类似tr();
addItem(item,int,int,int,int);//GridLayout class;---添加条目 ??和addLayout,addWidget
clear();//QComboBox class;QVariant class;QToolBar class;QString class;Qsettings class;
//QMenu class;QList class;QLabel class;QLineEdit class---清除所有的内容条目;
insertItems(int ,QStringList);//从int开始插入条目;
hide();//QWidget class,QComboBox class----隐藏窗体;
setSizeConstraint(SizeConstraint)//QLayout class.---调整layout的大小
SizeConstraint()//QLayout class.---返回layout的大小
setMinimumSize() //QWidget class--保留窗体的最小大小
setWindowIcon(); //QApplication class;QWidget class--设置窗体图标;
setAttribute(attribute);//QCoreApplication class;QWidget class;--设置属性;
//setAttribute(attribute,false);--清除属性;
Qt初级-成员函数(二)
insertItems(int ,QStringList);//从int开始插入条目;
hide();//QWidget class,QComboBox class----隐藏窗体;
setSizeConstraint(SizeConstraint)//QLayout class.---调整layout的大小
SizeConstraint()//QLayout class.---返回layout的大小
setMinimumSize() //QWidget class--保留窗体的最小大小
setWindowIcon(); //QApplication class;QWidget class--设置窗体图标;
setAttribute(attribute);//QCoreApplication class;QWidget class;--设置属性;
//setAttribute(attribute,false);--清除属性;
setVisible(true or false);//QWidget class;QAction class;QDialog class---使组件可见或者不可见
addMenu()//QMenuBar class;QMenu class;--添加菜单选项
menuBar()//QMainWindow class;---创建菜单选项;
addAction()//QWidget class;QMenu class;QToolBar class;QMEnuBar class;
addSeparator()//QToolBar class,MenuBar class;--添加分隔线
setContextMenuPolicy()//Qt namespace---?
setAlignment( Qt::Alignment)//Qt namespace---设计组件的方向;
setIndent(int);//QLabel class;--标签缩进的像素距离;
setWindowModified//QWidget class---当修改内容的时候需要true,提示保存;
isWindowModified();//QWidget class---判断是否有修改;
QMessageBox::warning(widget,内容,QMessageBox::);//return int;
getOpenFileName(widget,"名称","文件格式");//QFileDialog class;--弹出文件对话框
showMessage("内容",时间(ms));//QStatusBar class;--显示信息
removeAll("name");//QList--QStringList--移除所有name的信息;
prepend()//QList class;QString class--插入一个列表项或者字符串在开始;
fileName();//QFileInfo class;---返回不包括路径的文件名;
count()//QString class;QToolBox class;QList class;QComboBox class---返回字符或者条目数;
count("x");//QList class;---找出某个条目中的特定字符数目;
setText(text);//QAction class;QClipboard class;QLineEdit class;--设置文本信息;
setData(Qvariant);//QAction class;---将内部数据给QVariant类型;
data();//QAction class;==setData
//QString class;---返回QChar指针用来修改字母或者按顺序输出;
//QTableWidgetItem class;---返回单元内的数据;
raise();//QWidget class;---使窗口置顶;
activateWindow();//QWidget class;--使置顶的窗体变为活动窗口;
selectedRanges();//QTableWidget;--返回一个选择序列;
first();//QList class;--第一条信息;
leftColumn();//QTableWidgetSelectionRange class---选择最左侧列
rightColumn();//QTableWidgetSelectionRange class---最右侧列
topRow();//QTableWidgetSelectionRange class---第一个行
bottomRow();//QTableWidgetSelectionRange class---最后一行
columnCount();//QTableWidgetSelectionRange class---选中的列数
rowCount();//QTableWidgetSelectionRange class----选择的行数;
currentIndex();//QComboBox class;----返回当前的条目;
QMessageBox::about(窗口,标题,内容);
saveGeometry();//QWidget class---保存当前的几何图形区域;
restoreGeometry();//QWdiget class---读取设置
setHorizontalHeaderItem();//QTableWidget class;---设置行头
setVerticalHeaderItem();---设置列头,默认为数字;
setItemPrototype( QTableWidgetItem *item);//QTableWidget class;---设置标准的单元;
atEnd();//QFile class;---检测文件结尾;
open();//QFile class;---打开文件;
setVersion();//QDataStream class;---选择QDataStream的版本;
split("x");//QString class;---使用x截取QString,return QStringList;
currentRow();//QTableWidget class;---返回当前选择的单元行数;
currentColumn();//QTableWidget class;---返回当前选择的单元列数;
clearSelection();//QAbstractItemView class->QTableView->QTableWidget;--清除当前选择;
QApplication::beep();//QApplication class---发出声音;
append("x");//QList class;QString class;---在尾部添加条目或者粘贴字符串;
qStableSort(rows.begin(),rows.end(),compare);//--对从begin到end排序
startsWith("x");//QString class---返回bool表示是不是以x开始;
replace("x","y");//QString class.以y代替x;
isLetterOrNumber();//QChar class---检测QChar是否是字母或者数字;
exactMatch("");//QRegExp class---检测是否精确匹配了,返回true or false;
setShortcut("");//QAction class ---设置快捷方式
setStatusTip("");//QAction class---设置提示语;
setSelectionMode(ContiguousSelection);//--QTableWidget class设置单元选择方式;
setCheckable(true);-----//QAction class设置多选动作为true;
toString()//QVariant class---转换为字符;
toUpper()//QString class----转换为大写;
toByteArray()//QVariant class---转换为字节数组;
unicode()//QString class;QChar class;---转化为UTF格式;
toStringList//QVariant class---转换为字符串列表;
toBool();//QVariant class---转换为bool值;
toInt()//QVariant class---转换为短整型;
toDouble(&ok)//QVariant class---转换为double型;---如果可以转换则ok=true;
accept()//QDialog class;QEvent class; --表示执行这个事件;
ignore()//QEvent class;--表示不睬这个事件;
i.hasNext() i.next() i.remove();//---迭代器的操作;
isValid()//QVariant class--判断QVariant是否有数据类型在里面;
type()//QVariant class---返回QVariant内部数据类型;
槽:
closeALLWindows()//关闭多个窗口....拥有者:qApp;
selectAll()//选择所有所有条目...拥有者:QAbstractItemView->QTableView->QTableWidget
setShowGrid()//使网格显示...拥有者:QTableView->QTableWidget
aboutQt()//显示有关Qt的信息,拥有者:QAppliacation;
close()//关闭窗体。。拥有者:QWidget;
accept()//隐藏窗口,并且使结果为Accepted;拥有者:QDialog,QEvent
reject()//隐藏窗口,并且使结果为Rejected;拥有者:QDialog,QEvent
setVisible(bool)//使部件可见。。拥有者:QAction,QWidget,QDialog
信号:
triggered()//当部件被单击时,发送,拥有者:QAction,QMenu,QMenuBar,QToolButton
textChanged(const QString &)//当文本信息被修改时发送,拥有者:QLineEdit
clicked()//当部件被单击时发送,拥有者:QDialgButtonBox,QGroupBox,QAbstractButton,QAbstractItemView
accepted()//当被单击时,QDialgButtonBox,QDialog
rejected()//当被单击时,QDialgButtonBox,QDialog
toggled(bool)//当复选框被选中或者取消时发送,拥有者:QAbstractButton,QGroupBox,QAction
另类链接方式:
private slots:
void on_lineEdit_textChanged();
QMetaObject::connectSlotsByName(GoToCellDialog);
void gotocelldialog::on_lineEdit_textChanged()
{
buttonBox->button(QDialogButtonBox::Ok)->setEnabled(lineEdit->hasAcceptableInput());
}