1.矩阵具有坐标变换的作用,例如:左乘一个旋转矩阵,实现点的坐标旋转,左乘一个平移矩阵实现,点的平移 2.一个点可以同时串联相乘几个变换矩阵,实现坐标连续变换,根据左乘规则,右边矩阵先作用于点,作用顺序从右往左,例如:C*B*A*point(注:C,B,A分别为变换矩阵,point为一个vector3的位置向量,即点的x,y,z坐标)运算式子,矩阵A先作用于point,其次是B,C 3.QMatrix4x4矩阵类本身就支持translate,rotate,projection等连续变换函数,那么…
QT中获取选中的radioButton的两种方法   QT中要获取radioButton组中被选中的那个按钮,可以采用两种如下两种办法进行: 方法一:采用对象名称进行获取 代码: 1 QRadioButton* pbtn = qobject_cast<QRadioButton*>(ui->BG->checkedButton()); 2 QString name = pbtn->objectName(); 3 if(!QString::compare(name, "r…
QT中要获取radioButton组中被选中的那个按钮,可以采用两种如下两种办法进行: 方法一:采用对象名称进行获取 代码: 1 QRadioButton* pbtn = qobject_cast<QRadioButton*>(ui->BG->checkedButton()); 2 QString name = pbtn->objectName(); 3 if(!QString::compare(name, "radioButton")) 4 { 5 QM…
众所周知,我们可以将C++项目中的类以及某些方法导出,形成 .dll 文件,以供其他程序使用,下面将说明Qt环境下的使用方法. 首先创建共享库,步骤如下: 下一步会出现类对话框等等,不用管它,直接点击创建即可,稍后再将类都删了. 创建好以后你会发现有一个包含global的头文件,这个文件中定义了__declspec(dllexport).__declspec(dllimport)等,也可以删掉(如果要按照下面的方法的话,删掉即可). 接下来还有重要的一步,请在.pro文件中,加入 CONFIG…
ui源文件到界面显示的原理可以网上搜索,这里不再描述.简单讲就是先要从*.ui生成ui_*.h然后再编译,所以界面未更新实际上是因为ui_*.h这个文件没有更新导致的. 出现此问题后我尝试了以下几个方法: 1,在生成目标的文件夹内找到ui_*.h,复制到源代码文件夹内覆盖原来文件,成功 2,删除源代码文件夹内ui_*.h后,clear all 然后再重新编译,失败. 3,uic *.ui -o ui_*.h 失败,生成的ui_*.h是空的 根治的方法: 项目设置文件.pro内增加 UI_DIR=…
容器支持引用计数和写时复制 父对象和子对象 QPointer.QSharedPointer.QWeakReference 对象子类化 栈对象…
刚做完的一个项目,在测试时出现了一个问题:由于多线程的存在,当进行语音识别时:如果用户点击程序界面上的button或者其他接受点击事件后会发出信号的widget时,程序会crash ! 后来尝试着从多线程上去解决,但是比较困难:后来只能从另外一条路来解决,那就是:当语音识别进行时:禁掉一切用户操作! 所谓的禁掉一切UI操作,在手机等手持设备上,尤其是纯触摸屏的设备上,主要就是指的禁止mouse操作!当然了:也可能是禁止键盘操作等.那如何去做这一点呢? 方法:我们可以截获禁止操作的窗口的所有eve…
由于qt中没有原生的执行sql文件的方法.因此我们需要根据sql文件中的流的特点,将其分解成一个个语句单独执行. 1.首先通过Qfile读取sql文件 2.将sql文件中的内容通过“:”进行拆解 3.对拆解后的内容,依次进行执行exec语句. int excute_sql_file(const char * sql_file_path) { ; QFile qfile(sql_file_path); if (!qfile.exists()) { ; } if (!qfile.open(QIODe…
在qt中,使用Singleton模式时一定要小心.因为Singleton模式中使用的是静态对象,静态对象是直到程序结束才被释放的,然而,一旦把该静态对象纳入了Qt的父子对象体系,就会导致不明确的行为.并且,就算我们小心谨慎的不把父对象指针传入构造函数(即不给该静态对象制定父对象),根据Qt的某些机制,还是有可能重定义父对象的,而这恰恰是最致命的,最容易疏忽的. 所以说,在QT中使用Singleton模式,确切说是"静态对象",一定要小心,特别是那些继承于QWidget的嵌套窗口类,就算…
1.什么是ui?ui通常是用Qt 设计师设计出来的界面文件的后缀.通常情况下ui是一个指向这个界面类的指针.ui-> 一般就是用来访问这个界面类里面的控件.例如你的ui文件里有一个叫okButton的QPushButton.你就可以这样来访问这个按钮ui->okButton. setupUi(this)是由.ui文件生成的类的构造函数,这个函数的作用是对界面进行初始化, 它按照我们在Qt设计器里设计的样子把窗体画出来,把我们在Qt设计器里面定义的信号和槽建立起来. 也可以说,setupUi 是…