QT信号和槽,以及设计器的使用,还有怎样用ui文件

一.如何使用c++方式编写qt的代码
   1.类的实例就是一个带有组件的父窗口 自己的类就要
     继承QWidget  或者 子类 QDialog  QMainWindow
   2.窗口中的组件  都要做为自定义类的成员变量
   3.类的头文件  和 实现文件 要分离实现
   4.如果类中有自定义的信号 和槽函数 则需要在头文件中
     出现一个宏 Q_OBJECT
      
二.信号和槽
   2.1信号和槽是qt编程的基础 和 核心   可以关联两个毫不相关
   的对象。
   2.2当信号和槽绑定时  没当发射 或者 触发这个信号时 就自动
   调用这个槽函数。
   2.3信号和槽函数的声明
   public slots:
   void    show();
   public:signals:
   void    mySig();
   2.4如果类中有自定义的信号和槽需要声明
      一个宏     Q_OBJECT
   2.5 连接信号 和 槽 使用
      QObject::connect(const QObject* sender,
                       const char*    signal,
                       const QObject* reciver,
                       const char*    method);     
      QObject::connect(a,SIGNAL(t()),b,SLOT(g()));
   2.6 断开信号 和 槽的连接
      QObject::disconnect(const QObject* sender,
                       const char*    signal,
                       const QObject* reciver,
                       const char*    method);
   2.7 一个信号 可以连接到多个槽
      QObject::connect(a,SIGNAL(t()),b,SLOT(g()));
      QObject::connect(a,SIGNAL(t()),c,SLOT(gg()));
      QObject::connect(a,SIGNAL(t()),d,SLOT(ggg()));  

   2.8 一个槽 可以连接多个信号
      QObject::connect(a,SIGNAL(t()),b,SLOT(g()));
      QObject::connect(c,SIGNAL(m()),b,SLOT(g()));
   2.9 一个信号 和 连接到 另外一个信号
      当一个信号 发射之后 会触发另外一个信号
      这个信号可以传递下去
      QObject::connect(a,SIGNAL(t()),b,SIGNAL(h()));  
      QObject::connect(b,SIGNAL(h()),c,SLOT(cs()));  
   2.10 当删除对象时  和 这个对象关联的所有连接
      就会自动断开。
   2.11 是不是任意的信号  可以 和任意的槽进行连接?
      不是。
      信号和槽 连接时 要有相同的参数类型 相同的参数顺序
      相同的参数个数。
      信号 和 槽 如果带参 需要出现参数的类型。
   2.12 想让任意的信号  和 任意的槽进行连接?
      直接在自定义的槽函数 调用 最终的槽函数
      QPushButton   clicked()
      QLabel        setText(QString)   
    
      自定义槽函数  结合自定义信号完成
      (线程中的数据 一般是通过信号通知线程外的访问)
三.设计器的使用
   designer   可见即所得的编辑器
   设计界面   把窗口部件盒中的组件 拖拽到 合适位置
   鼠标可以改变组件的位置和 大小
   选中组件 可以复制  可以删除
       使用方向键 改变组件的位置  每次 10px
       ctrl+方向键改变组件的位置  每次 1px
   双击改变文字
   shift  + 方向键    改变组件的大小  每次 10px
   ctrl+shift +方向键    改变组件的大小  每次 1px

   通过属性编辑器(ctrl+i)  控制组件的相关属性  
       对象名  以及其它显示属性
   对象察看器  查看对象之间的组织关系   确定对象名和
       对象的类型。

   最终得到界面文件  ***.ui
 
四.如何使用 ui文件
   4.1 把ui文件转换成 .h 文件
       uic    jfq.ui  -o jfq.h
   4.2 jfq.h 就是代表界面的文件
   4.3 使用生成的jfq.h
       定义新的.h 文件  使用jfq.h 中的类
       做界面类的指针              
       实现这个头文件
   4.4 创建界面  加载界面
   4.5 如果实现功能
       要访问界面中的组件  需要通过 ui访问

原文地址:https://www.cnblogs.com/JohannaFeng/p/4728546.html