Qt窗口部件

来源:互联网 发布:现货交易软件开发 编辑:程序博客网 时间:2024/05/15 01:40
Qwidget窗口部件 作为顶层窗口QWidget *win = new QWidget;win->setWindowTitle("Enter Your Age");Qslider 和 QSpinBox 作为Qwidget的子对象QObject::connect(spinBox,SIGNAL(valueChanged(int)),slider,SLOT(setValue(int)));QObject::connect(slider,SIGNAL(valueChanged(int)),spinBox,SLOT(setValue(int)));//调用两次确保两个窗口部件值保持一致//valueChange(int)->setValue(int)值传递时单项的layout manager 布局管理器能够对其所负责窗口部件的尺寸大小和位置进行设置的对象QHBoxLayout    在水平方向排列窗口部件,从左到右QVBoxLayout    在竖直方向上排列窗口部件,从上到下QGridLayout      吧各个窗口部件排列在一个网格中QHBoxLayout *layout = new QHBoxLayout;layout->addWidget(spinBox);layout->addWidget(slider);win->setLayout(layout);//窗口控件的布局管理


 

findChild<T>()函数
   返回与给定的名字和类型相匹配的的子对象
QUiLoader类要使用在应用程序的.pro文件中加入CONFIG +=uitools;

 

Qwidget窗口部件 作为顶层窗口Qslider 和 QSpinBox 作为Qwidget的子对象QObject::connect(spinBox,SIGNAL(valueChanged(int)),slider,SLOT(setValue(int)));QObject::connect(slider,SIGNAL(valueChanged(int)),spinBox,SLOT(setValue(int)));

 

 

signals:
 void findNExt(const QString &str,Qt::CaseSensitivity cs);
 void findPrevious(const QString &str,Qt::CaseSensitivity cs);

signal  申明了用户单击按钮时对话框所发射的两个信号。如果向前查询(search backward)选项生效,对话框就发射findPrevious()信号,否则就发射findNext()信号

signals 是一个宏,Qt::CaseSensitivity是枚举类型,它有Qt::CaseSensitive和Qt::CaseInsensitive两个取值


private slots:
 void findClicked();
 void enableFindButton(const QString &text);
slots 也是一个宏,

tr()函数调用是把他们翻译成其他语言的标记。

确定取消按钮中确定按钮
buttonBox->button(QDialogButtonBox::Ok)

 

滚动条机制在QAbstractScrollArea中实现的,它是所有可滚动窗口部件的基类
QLabel文本显示普通文本、HTML和图片
Progress Bar进度条
QTextBrowser是一个只读型QTextEdit子类,它可以显示带格式的文本。
QLineEdit可以使用一个输入掩码、一个检验器或者同时使用两者对他的输入进行限定
QColorDialog 颜色对话框
QFontDialog 字体对话框   QFontComboBox内置字体
QPageSetupDialog 页面属性对话框
QFileDialog 文件对话框
QPrintDialog 打印对话框

Q_OBJECT //使用到信号和槽或国际翻译的时候
resize(200,200) 窗口重置大小

#include <QPainter>//画图
#include <QPoint>//点
QPainter paint(this);
paint.translate(100,100);//移动原点坐标
paint.setRenderHint(QPainter::Antialiasing);//反锯齿,图形变平滑
paint.setPen(Qt::red);//画笔
paint.setBrush(Qt::red);//画刷
paint.drawConvexPolygon(sed,4);、//绘制四边形
    paint.rotate(30);   //坐标顺时针旋转

 

图形视图框架The QGraphics View Framework 包含三大类:
QGraphicsItem项类(图元类)
 绘制你所要用到的图形
QGraphicsScene 场景类
 包含并管理所有的图元
QGrapicsView 视图类
 显示所有的场景

 

QPushButton *button = new QPushButton("Quit"); //qpushbutton 按钮类  QObject::connect(button,SIGNAL(clicked()),&a,SLOT(quit()));  //将button的clicked信号(SIGNAL(Qt语法)(clicked()))与quit()槽(窗口类的SLOT(Qt语法)(quit())事件)关联起来使用了Qobject的connect函数button->show();//按钮显示


 

创建的时候不需要选择ui文件,系统头文件选择QWidget
判断托盘中是否有该图标:
QSystemTrayicon::isSystemTrayAvailable()
添加系统托盘:
create()
setContextMenu()

show();

//响应消息
showMessage()

//判断响应事件,单击、双击、右键
activated()

 

内省:对于实现信号和槽是必需的,
检验器类QRegExpValidator
QregExp regExp("[A-Za-z][1-9]{0,2}")
允许一个大写或者小写字母,后面跟着一个范围为1-9的数字,后面再跟上0-2个0-9的数字

父子对象机制:当利用一个父对象创建一个子对象时,父对象会把子对象添加到自己的子对象列表中,当父对象被删除时,它会遍历子对象列表并删除每一个子对象,然后这些子对象再去删除自己所包含的每个子对象。

 

 

 

原创粉丝点击