
Qt4
cloud-2014
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Qt4学习笔记(一),第一个Qt程序
创建一个垂直布局管理器QVBoxLayout对象vLayout;函数QVBoxLayout::addWidget()将标签对象label和按钮对象btn放置在该布局管理器vLayout中;最后函数QWidget::setLayout()将把垂直布局管理器vLayout添加到窗口部件对象pWidget中;垂直布局管理器vLayout将上述添加的标签label和按钮btn由上到下依次放...原创 2018-05-10 09:10:36 · 371 阅读 · 0 评论 -
Qt4学习笔记(十 二),Qt中如何编写插件,加载插件和卸载插件
Qt提供了一个类QPluginLoader来加载静态库和动态库,在Qt中,Qt把动态库和静态库都看成是一个插件,使用QPluginLoader来加载和卸载这些库。由于在开发项目的过程中,要开发一套插件系统,就使用了Qt的这套类库。一 编写插件编写一个Qt的插件需要以下步骤 1.声明一个插件类,2.定义一个类,实现这个插件类定义的接口,定义的这个类必须从QObject集成下来。3.使用Q_INTER...原创 2018-06-27 16:22:06 · 1350 阅读 · 0 评论 -
Qt4学习笔记(十 一),Qt 捕捉窗口关闭事件与信号的捕捉
有时候我们希望在关闭窗口之前做一些操作,例如保存缓存数据或向用户提示是否关闭窗口等等。由于一般的窗口都是继承自QWidget, 那么我们可以通过覆盖QWidget中的虚函数closeEvent(QCloseEvent* event);来达到这个目的。(1)首先添加依赖库:[cpp] view plain copy#include <QCloseEvent> (2)接着声明和定义clo...原创 2018-06-25 11:00:14 · 4219 阅读 · 0 评论 -
Qt4学习笔记(十),Qt程序中引入自定义窗口部件的三种方法
#include <QtGui/QApplication>#include <QWidget>//自定义ui文件生成的头文件#include "ui_findfileform.h"//第一种直接使用的方法int main(int argc, char *argv[]){ QApplication a(argc, argv); QWidget *pWid...原创 2018-05-31 16:31:05 · 1128 阅读 · 0 评论 -
Qt4学习笔记(六),Qt 线程间信号槽传递自定义数据类型(qRegisterMetaType的使用)
#include <QMetaType>CFileDataModel::CFileDataModel(QObject *parent) : QAbstractItemModel(parent){ //初始化根节点 init(); //指针和引用类型的参数都用如下方式注册, //qRegisterMetaType<CFileData>("CFile...原创 2018-05-15 11:09:05 · 3006 阅读 · 0 评论 -
QTableView/QTableWeight设置自适应宽度
我的数据一共有4列,但QTabelView在父窗体中可能会随之父窗体的变化而导致宽度变化,然后当QTabelView宽度变化时,其现实的表格宽度(每一列的宽度)并没有随之,这会导致QTabelView变大时,右侧出现空白,变小时显示不全并出现滚动条? 当时就想有没有办法设置QTableView显示模型数据时,放宽度发生变化时,表格每列的宽度也会随之变化,使得表格始终和QTableVie...原创 2018-05-08 10:28:56 · 20151 阅读 · 3 评论 -
Qt4学习笔记(九),QMainWindow中的布局管理
给QWidget或者QDialog设置布局的时候方式很简单。创建好一个布局:mainLayout,然后不停地把各个控件往mainLayout里面放,最后调用setLayout(mainLayout)就行了。QMainWindow中使用这个方法的时候却不管用,因为QMainWindow是默认有layout的,所以再次设置layout会失效。会出现这种提示:QWidget::setLayout: At...原创 2018-05-21 14:59:04 · 1823 阅读 · 0 评论 -
Qt4学习笔记(八),QMessageBox对话框
#ifndef CBUILTINDLG_H#define CBUILTINDLG_H#include <QDialog>class QTextEdit;class QPushButton;class CBuiltinDlg : public QDialog{ Q_OBJECTpublic: CBuiltinDlg(QWidget *parent=0); vi...原创 2018-05-20 17:28:38 · 1038 阅读 · 0 评论 -
Qt4学习笔记(七),QMessageBox对话框
#include <QtGui/QApplication>#include <QMessageBox>int main(int argc, char *argv[]){ QApplication a(argc, argv); //关于消息框 QMessageBox::about(NULL, "this title", "this QMess...原创 2018-05-20 11:47:14 · 1250 阅读 · 0 评论 -
Qt4学习笔记(五),QThread学习之QWaitCondition
#include <QThread>#include <QWaitCondition>#include <QMutex>#include <QDebug>const int DataSize = 10000;const int BufferSize = 8192;int buffer1[BufferSize];QWaitCondit...原创 2018-05-12 11:35:37 · 839 阅读 · 0 评论 -
Qt4学习笔记(四),QThread学习之QSemaphore
#include <QDebug>#include <QThread>#include <QSemaphore>//信号量const int DataSize = 100000;const int BufferSize = 8192;//假设的共享缓冲区int buffer[BufferSize];//空闲单元信号量个数,初始化为BufferS...原创 2018-05-12 10:55:21 · 358 阅读 · 0 评论 -
Qt4学习笔记(三),QThread学习之QMutex
#include <QMutex>//临界资源class Key{public: Key() { key = 0; } int createKey() { QMutexLocker locker(&mutex); ++key; return key; } int value() { QMutexLocker locker(&...原创 2018-05-12 10:48:36 · 919 阅读 · 0 评论 -
Qt4学习笔记(二),QDialog学习之登录框实现
LoginDlg.h:#ifndef LOGINDLG_H_#define LOGINDLG_H_#include <QDialog>class QLineEdit;class LoginDlg : public QDialog{ Q_OBJECTpublic: LoginDlg(QWidget *parent = 0); ~LoginDlg();priv...原创 2018-05-10 14:25:33 · 735 阅读 · 0 评论 -
QTCreator + MSVC10编译器 使用boost::filesystem 时 error LNK2019: codecvt ... 问题的解决
今天在将一个QTCreator管理的项目 从Linux下 拿到Windows 下(使用MSVC10编译器) 来编译时发现居然通不过。报了以下连接错误:error LNK2019: 无法解析的外部符号 "public: static class std::codecvt<unsigned short,char,int> const & __cdecl boost::filesys...原创 2018-07-10 18:42:58 · 650 阅读 · 0 评论